libgcc: support heap-based trampolines
Add support for heap-based trampolines on x86_64-linux, aarch64-linux, and x86_64-darwin. Implement the __builtin_nested_func_ptr_created and __builtin_nested_func_ptr_deleted functions for these targets. Co-Authored-By:Maxim Blinov <maxim.blinov@embecosm.com> Co-Authored-By:
Iain Sandoe <iain@sandoe.co.uk> Co-Authored-By:
Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> libgcc/ChangeLog: * libgcc2.h (__builtin_nested_func_ptr_created): Declare. (__builtin_nested_func_ptr_deleted): Declare. * libgcc-std.ver.in: Add the new symbols. * config/aarch64/heap-trampoline.c: Implement heap-based trampolines for aarch64. * config/aarch64/t-heap-trampoline: Add rule to build config/aarch64/heap-trampoline.c * config/i386/heap-trampoline.c: Implement heap-based trampolines for x86_64. * config/i386/t-heap-trampoline: Add rule to build config/i386/heap-trampoline.cc * config.host: Handle --enable-heap-trampolines on x86_64-*-linux*, aarch64-*-linux*, x86_64-*-darwin*.
Showing
- libgcc/config.host 3 additions, 0 deletionslibgcc/config.host
- libgcc/config/aarch64/heap-trampoline.c 172 additions, 0 deletionslibgcc/config/aarch64/heap-trampoline.c
- libgcc/config/aarch64/t-heap-trampoline 19 additions, 0 deletionslibgcc/config/aarch64/t-heap-trampoline
- libgcc/config/i386/heap-trampoline.c 172 additions, 0 deletionslibgcc/config/i386/heap-trampoline.c
- libgcc/config/i386/t-heap-trampoline 19 additions, 0 deletionslibgcc/config/i386/t-heap-trampoline
- libgcc/libgcc-std.ver.in 3 additions, 0 deletionslibgcc/libgcc-std.ver.in
- libgcc/libgcc2.h 3 additions, 0 deletionslibgcc/libgcc2.h
Loading
Please register or sign in to comment