https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119730
--- Comment #3 from Florian Lugou <florian.lugou at provenrun dot com> --- (In reply to Andrew Pinski from comment #1) > A dup of bug 21161. > > *** This bug has been marked as a duplicate of bug 21161 *** I was thinking this might not have been a duplicate of bug 21161 since, in this case, x0 is never set after the call to setjmp, no matter the data flow. (In reply to Andrew Pinski from comment #2) > I should mention why, x0 is assigned to the x0 register but x0 is also used > for arguments and both just happen to contain zero. Not sure I get your question about x0. x0 is listed in the input operands of the extended asm which, as far as I understand, is the expected use of local register variables (https://gcc.gnu.org/onlinedocs/gcc/Local-Register-Variables.html).