https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124266

--- Comment #12 from Richard Sandiford <rsandifo at gcc dot gnu.org> ---
(In reply to Wilco from comment #11)
> (In reply to Richard Sandiford from comment #10)
> > (In reply to Wilco from comment #9)
> > > Eg. GCC13 generates: https://godbolt.org/z/qexq61E47
> Look at the notes, they don't even match up. So even if it didn't correctly
> implement asynchronous unwind (which we turn on by default), it is still
> totally wrong.
Ah, right, sorry.  You mean the extra cfa_restores for the second registers in
each LDP?  I should have scrolled down further.

And yeah, it looks like we're missing a frame_related_p guard on:

          *cfi_ops = alloc_reg_note (REG_CFA_RESTORE, reg2, *cfi_ops);

aarch64_pop_regs should have the guards too.

Reply via email to