Den ons 20 nov. 2019 kl 11:09 skrev Miod Vallat <m...@online.fr>: > > > For some reason, clang assumes the stack is aligned on a 16 byte > > > boundary, as for the first iteration v0 is computed as (v1 or 8), > > > while further iterations use (v1 plus 8). > > > > > > I guess it defaults to 16 for N64? > > https://reviews.llvm.org/D35874 > > Indeed. And the kernel makes sure to use 16 byte alignment, so there > must be a bug creeping somewhere which causes a wrong offset to be > applied... > > Ah, so somewhere in the varargs it misses to take current alignment into consideration? That is worse of course.
> > Wonder if it would be worth testing a run with clang -mstack-alignment=8 > > just to confirm this? > > This ought to sweep the issue under the rug. > Lots of room under there. ;) -- May the most significant bit of your life be positive.