summaryrefslogtreecommitdiff
path: root/lib/builtins/arm/lesf2vfp.S
AgeCommit message (Collapse)Author
2017-05-24Allow armv{7,7s,7k,7m,7em} buildsJonathan Roelofs
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@303765 91177308-0d34-0410-b5e6-96231b3b80d8
2017-01-11builtins: support building ARM builtins for a HF targetSaleem Abdulrasool
The `-target` impacts the CC for the builtins. HF targets (with either floating point ABI) always use AAPCS VFP for the builtins unless they are AEABI builtins, in which case they use AAPCS. Non-HF targets (with either floating point ABI) always use AAPCS for the builtins and AAPCS for the AEABI builtins. This introduces the thunks necessary to switch CC for the floating point operations. This is not currently enabled, and should be dependent on the target being used to build compiler-rt. However, as a stop-gap, a define can be added for ASFLAGS to get the thunks. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@291677 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-22builtins: tag with noexecstackSaleem Abdulrasool
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
2014-05-12[CompilerRT] use .p2align, .balign instead of .alignSaleem Abdulrasool
The .align statements in ARM assembly routines is actually meant to be a power of 2 alignment (e.g. .align 2 == 4 byte alignment, not 2). Switch to using .p2align. .p2align is guaranteed to be a power-of-two alignment always and much more explicit. The .align in the case of x86_64 is byte alignment, use .balign instead of .align. git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@208578 91177308-0d34-0410-b5e6-96231b3b80d8
2014-02-14Move original compiler-rt functions (libgcc replacement) to lib/builtins ↵Alexey Samsonov
directory git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@201393 91177308-0d34-0410-b5e6-96231b3b80d8