Elektrine lite

← Feed

@mei@donotsta.re

2025-11-22 14:03 UTC

current status: Rust's new implementation of formatting internals non-deterministically prints garbage on specifically ATmega2560 due to what we've tracked down to be an LLVM bug (see also: https://xkcd.com/2083/)

Replies (1)

  • @mei@donotsta.re 2025-11-22 14:10

    why formatting internals? well, they're doing pointer tagging that depends on alignment. why ATmega2560? well, that's the one that has 256KB of program flash. and a 2-byte return address can only support 128KB of program flash (because the flash is word addressed) which means that, yes, specifically the 256KB version of the microcontroller pushes 3-byte return addresses on the stack

    Open ##2210008