On 02/29/2016 07:50 AM, Jose E. Marchesi wrote:
> The backtrace(3) implementation for sparc contains a simple unwinder
> that works well in most cases, but that unwinder is not used if
> libgcc_s.so can be dlopened and it provides _Unwind_Backtrace.
There's no reason that simple unwinder can't be
> The backtrace(3) implementation for sparc contains a simple unwinder
> that works well in most cases, but that unwinder is not used if
> libgcc_s.so can be dlopened and it provides _Unwind_Backtrace.
There's no reason that simple unwinder can't be put into
MD_FALLBACK_FR
> Consider the attached test program. When built with -g in sparc64-*-*
> the resulting binary contains:
>
> - A .eh_frame segment containing CFA information for __libc_csu_init and
> __libc_csu_fini.
>
> - A .debug_frame segment containing CFA information for func
> Consider the attached test program. When built with -g in sparc64-*-*
> the resulting binary contains:
>
> - A .eh_frame segment containing CFA information for __libc_csu_init and
> __libc_csu_fini.
>
> - A .debug_frame segment containing CFA information for func2, func1 and
> main.
>
> T
Hi Eric.
> In sparc systems glibc uses libgcc's unwinder to implement the
> backtrace(3) function, defaulting to a simple non-dwarf unwinder if
> libgcc_s doesn't provide a working _Unwind_Backtrace.
>
> However, libgcc's unwinder uses .eh_frame instead of .frame_debug, and
> In sparc systems glibc uses libgcc's unwinder to implement the
> backtrace(3) function, defaulting to a simple non-dwarf unwinder if
> libgcc_s doesn't provide a working _Unwind_Backtrace.
>
> However, libgcc's unwinder uses .eh_frame instead of .frame_debug, and
> .eh_frame is fully populated o