HomeFreeBSD

csu: Add the prologue and epilogue to the _init and _fini on i386

Description

csu: Add the prologue and epilogue to the _init and _fini on i386

Normally, modern unwinders uses Dwarf information to unwind stack,
however in case when the code is not annotated by Dwarf instructions,
unwinders fallbacks to a frame-pointer based algorithm.

That is allows libunwind to unwind stack from global constructors and
destructors. Also it makes gdb happy as it printed nonexistent frame
before.

Reviewed by: kib, imp
Differential Revision: https://reviews.freebsd.org/D40948

Details

Provenance
dchaginAuthored on Jul 11 2023, 12:11 PM
Reviewer
kib
Differential Revision
D40948: csu: Add the prologue and epilogue to the _init and _fini on i386
Parents
rGe541cf8316bb: rtld: Annotate .rtld_start on i386
Branches
Unknown
Tags
Unknown