summaryrefslogtreecommitdiff
path: root/lib/builtins/arm/modsi3.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
commit4c71a477ac0bd7b19c72d7625861f1f18c15b278 (patch)
treec2fd3c01e223cdac2b2042c6d323b2e2f59cd695 /lib/builtins/arm/modsi3.S
parent1b1a91100eca99b8eef8fa9b5ffe471d3cf27af4 (diff)
downloadcompiler-rt-4c71a477ac0bd7b19c72d7625861f1f18c15b278.tar.gz
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. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@273500 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/builtins/arm/modsi3.S')
-rw-r--r--lib/builtins/arm/modsi3.S3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/builtins/arm/modsi3.S b/lib/builtins/arm/modsi3.S
index 295a227d8..1d302edc6 100644
--- a/lib/builtins/arm/modsi3.S
+++ b/lib/builtins/arm/modsi3.S
@@ -61,3 +61,6 @@ LOCAL_LABEL(divzero):
CLEAR_FRAME_AND_RETURN
#endif
END_COMPILERRT_FUNCTION(__modsi3)
+
+NO_EXEC_STACK_DIRECTIVE
+