summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/builtins/arm/aeabi_idivmod.S
diff options
context:
space:
mode:
authorSaleem Abdulrasool <compnerd@compnerd.org>2016-06-22 22:09:42 +0000
committerSaleem Abdulrasool <compnerd@compnerd.org>2016-06-22 22:09:42 +0000
commit590e85b57561f07d09b51067090d4abc763afca5 (patch)
treec4ee28977a74ccb6ac8c3bc58b0340033c9643a2 /compiler-rt/lib/builtins/arm/aeabi_idivmod.S
parent928a95d0b0ad71de454014c9eca348e82929eb13 (diff)
downloadbcm5719-llvm-590e85b57561f07d09b51067090d4abc763afca5.tar.gz
bcm5719-llvm-590e85b57561f07d09b51067090d4abc763afca5.zip
builtins: tag with noexecstack
These routines do not require executable stacks. However, by default ELFish linkers may assume an executable stack on GNUish environments (and some non-GNU ones too!). The GNU extension to add a note to indicate a non-executable stack is honoured by these environments to mark the stack as non-executable (the compiler normally emits this directive on appropriate targets whenever possible). This allows normal builds from getting executable stacks due to linking to the compiler rt builtins. llvm-svn: 273500
Diffstat (limited to 'compiler-rt/lib/builtins/arm/aeabi_idivmod.S')
-rw-r--r--compiler-rt/lib/builtins/arm/aeabi_idivmod.S3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler-rt/lib/builtins/arm/aeabi_idivmod.S b/compiler-rt/lib/builtins/arm/aeabi_idivmod.S
index 384add38279..2fcad862f73 100644
--- a/compiler-rt/lib/builtins/arm/aeabi_idivmod.S
+++ b/compiler-rt/lib/builtins/arm/aeabi_idivmod.S
@@ -26,3 +26,6 @@ DEFINE_COMPILERRT_FUNCTION(__aeabi_idivmod)
add sp, sp, #4
pop { pc }
END_COMPILERRT_FUNCTION(__aeabi_idivmod)
+
+NO_EXEC_STACK_DIRECTIVE
+
OpenPOWER on IntegriCloud