Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 10 Nov 2017 10:15:54 -0800
From:      John Baldwin <jhb@freebsd.org>
To:        src-committers@freebsd.org
Cc:        svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r325624 - head/libexec/rtld-elf/mips
Message-ID:  <6482881.6CZu26arCe@ralph.baldwin.cx>
In-Reply-To: <201711100117.vAA1HQqT094112@repo.freebsd.org>
References:  <201711100117.vAA1HQqT094112@repo.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6482881.6CZu26arCe>