On Friday, November 10, 2017 01:17:26 AM John Baldwin wrote: > Author: jhb > Date: Fri Nov 10 01:17:26 2017 > New Revision: 325624 > URL: https://svnweb.freebsd.org/changeset/base/325624 > > Log: > Some fixups to the CFI directives for PLT stub entry points. > > The directives I added in r323466 and r323501 did not define a valid > CFA until several instructions into the associated functions. This > triggers an assertion in GDB when generating a stack trace while > stopped at the first instruction of PLT stub entry point since there > is no valid CFA rule for the first instruction. > > This is probably just wrong on my part as the non-simple .cfi_startproc > would have defined a valid CFA. Instead, define a valid CFA as sp + 0 > at the start of the functions and then use .cfa_def_offset to change the > offset when sp is adjusted later in the function. > > Sponsored by: DARPA / AFRL
Forgot to note: also explicitly set .cfi_sections to only include unwind info in .debug_frame as none of these functions catch exceptions. -- John Baldwin _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"