public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* CFI for saved argument registers
@ 2022-05-16  6:29 Andreas Krebbel
  2022-05-16 13:25 ` Florian Weimer
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Andreas Krebbel @ 2022-05-16  6:29 UTC (permalink / raw)
  To: gcc

Hi,

I'm trying to provide a simple dwarf unwinder with access to the
argument register content. The goal is to make this information
available for optimized code without having to access debug
information for things like call site args. The extra overhead
of saving the values to the stack is acceptable in that case.

For that purpose I save the argument registers to the stack as we
would do for a variable argument lists. But this time I also provide
the CFI to allow the unwinder to locate the save slots.  Since I never
actually intend to restore the content there is no matching
cfi_restore for the cfi_offset and dwarf2cfi complains about the
traces being inconsistent because of that. I couldn't find a way to
prevent this.

The only way I see right now is adding a new reg note to invalidate
the save information in the reg_save array in dwarf2cfi.

Would this be acceptable? Is there perhaps an easier way to achieve that?

Bye,

Andreas

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-05-31 12:11 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-16  6:29 CFI for saved argument registers Andreas Krebbel
2022-05-16 13:25 ` Florian Weimer
2022-05-16 14:39 ` Andreas Schwab
2022-05-17  6:19   ` Andreas Krebbel
2022-05-31 12:11 ` Andreas Krebbel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).