On Nov 5, 2026, at 9:45 AM, Romain Dolbeau <romain%dolbeau.org@localhost> wrote:
+/* + * Push a frame that ends the %a6 chain on a new stack: its saved %a6 is + * itself and its return address 0. A profiling kernel's __mcount reads + * its caller's frame, and %a6 is otherwise the bootloader's, unmapped + * once the bootstrap map is gone. + */
Ok, but that doesn’t actually make sense. The frame chain terminates when, after unlnk’ing the frame, %a0 is 0 (i.e. a frame with saved-%a6 of zero is the last one on the stack).
And if you look at my manual step-though, I don’t see how mcount actually ends up de-ref’ing a bad saved-%a6.
|