bionic/libc/arch-arm/bionic
Nick Kralevich 6eee1fc68f crtend*: Add GNU_STACK note
Add a GNU_STACK marker to crtend* files. This tells the linker
that these files do not require an executable stack.

When linking, a missing GNU_STACK marker in any .o file can prevent
the compiler from automatically marking the final executable as NX
safe (executable stack not required).  In Android, we normally work
around this by adding -Wa,--noexecstack / -Wl,-z,noexecstack.
For files like crtend.S / crtend_so.S, which are included in every
executable / shared library, it's better to add the GNU_STACK note
directly to the assembly file.  This allows the compiler to
automatically mark the final executable as NX safe without any
special command line options.

References: http://www.gentoo.org/proj/en/hardened/gnu-stack.xml

Change-Id: I07bd058f9f60ddd8b146e0fb36ba26ff84c0357d
2012-08-10 14:12:00 -07:00
..
__get_pc.S Add missing symbol type directives. 2009-12-03 16:26:04 -08:00
__get_sp.S Add missing symbol type directives. 2009-12-03 16:26:04 -08:00
_exit_with_stack_teardown.S Add function marks and size indications 2011-02-17 09:07:25 -08:00
_setjmp.S Add function marks and size indications 2011-02-17 09:07:25 -08:00
abort_arm.S Implement the "abort" stub in assembly for ARM. 2012-05-08 14:39:35 -07:00
atexit.h arm: rewrite crtbegin* as C files. 2012-06-01 14:41:27 -07:00
atomics_arm.c libc: Fix typo that broke NDK compatibility. 2011-11-23 14:38:36 +01:00
clone.S bionic: Stack pointer/signal race condition. 2012-07-27 15:11:01 +02:00
crtbegin_so.c arm: rewrite crtbegin* as C files. 2012-06-01 14:41:27 -07:00
crtbegin.c arm: rewrite crtbegin* as C files. 2012-06-01 14:41:27 -07:00
crtend_so.S crtend*: Add GNU_STACK note 2012-08-10 14:12:00 -07:00
crtend.S crtend*: Add GNU_STACK note 2012-08-10 14:12:00 -07:00
eabi.c Allow dlclose() to properly call static C++ destructors. 2010-07-01 23:09:28 -07:00
exidx_dynamic.c auto import from //depot/cupcake/@135843 2009-03-03 19:28:35 -08:00
exidx_static.c auto import from //depot/cupcake/@135843 2009-03-03 19:28:35 -08:00
ffs.S Merge changes I8c481c89,I791406f8,I5f09cef8 2011-02-18 15:22:27 -08:00
futex_arm.S libc: provide atomic operations will full barriers for NDK apps. 2011-11-16 17:37:15 +01:00
kill.S Add function marks and size indications 2011-02-17 09:07:25 -08:00
libgcc_compat.c Merge "Trivial fix in comment" 2012-02-29 09:40:49 -08:00
memcmp16.S Add function marks and size indications 2011-02-17 09:07:25 -08:00
memcmp.S Add function marks and size indications 2011-02-17 09:07:25 -08:00
memcpy.S resolved conflicts for merge of 08e72d01 to jb-dev-plus-aosp 2012-05-10 09:19:59 -07:00
memset.S Add function marks and size indications 2011-02-17 09:07:25 -08:00
setjmp.S Add function marks and size indications 2011-02-17 09:07:25 -08:00
sigsetjmp.S Add function marks and size indications 2011-02-17 09:07:25 -08:00
strcmp.S Use ENTRY and EXIT macros for strcmp, memcpy, atexit. 2011-10-11 12:12:05 +04:00
strcpy.S Add function marks and size indications 2011-02-17 09:07:25 -08:00
strlen.c auto import from //depot/cupcake/@135843 2009-03-03 19:28:35 -08:00
syscall.S auto import from //depot/cupcake/@135843 2009-03-03 19:28:35 -08:00
tgkill.S Add tgkill syscall. 2011-11-18 16:40:48 -08:00
tkill.S Add function marks and size indications 2011-02-17 09:07:25 -08:00