summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/builtins/arm/aeabi_memset.S
Commit message (Collapse)AuthorAgeFilesLines
* Update more file headers across all of the LLVM projects in the monorepoChandler Carruth2019-01-191-4/+3
| | | | | | | | | | | | | | | | | | to reflect the new license. These used slightly different spellings that defeated my regular expressions. We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach. Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository. llvm-svn: 351648
* [Builtins] Do not use tailcall for Thumb1Weiming Zhao2017-11-091-0/+12
| | | | | | | | | | | | | | | | Summary: The `b` instruction in Thumb1 has limited range, which may cause link-time errors if the jump target is far away. This patch guards the tailcalls for non-Thumb1 Reviewers: peter.smith, compnerd, rengolin, eli.friedman Reviewed By: rengolin Subscribers: joerg, dalias, javed.absar, llvm-commits Differential Revision: https://reviews.llvm.org/D39700 llvm-svn: 317814
* [Builtins] Use 4 byte alignment for __aeabi_memclr.Manoj Gupta2017-09-261-0/+1
| | | | | | | | | | | | | | | | | Summary: Align __aeabi_memclr to 4 bytes. All other ARM functions are already aligned to 4-bytes in compiler-rt. (Split off from review D38227) Reviewers: compnerd, peter.smith, srhines, weimingz, rengolin, kristof.beyls Reviewed By: compnerd Subscribers: aemerson, javed.absar, llvm-commits Differential Revision: https://reviews.llvm.org/D38271 llvm-svn: 314255
* [Bultin][ARM] Make aeabi_memset be Thumb1 compatible and other asmWeiming Zhao2017-01-211-1/+1
| | | | | | | | | | | | | | | | | | | | | syntax fix Summary: Make the asm of aeabi_memset be assembled for thumb1. Also fix some instructions to conform with the syntax of ARM reference manual. For example, muls requires the form of "Rd, Rn, Rd" and orrs requires the form of "Rd, Rm". Clang-as is benign but it may fail other assembler if not in the exact form. Reviewers: rengolin, compnerd, kubamracek Reviewed By: rengolin, compnerd Subscribers: aemerson, llvm-commits, mgorny Differential Revision: https://reviews.llvm.org/D28971 llvm-svn: 292727
* [RT-ARM] Syntax unified for aeabi_mem* functionsRenato Golin2016-07-131-0/+1
| | | | | | | | | | | | | Use unified syntax for builtins/arm/aeabi_mem*.S. This makes these files consistent with the others. This fixes a problem on the linker, which can fail with the message "relocation truncated to fit: R_ARM_THM_JUMP11 against symbol" Patch by Kor Nielsen. llvm-svn: 275264
* builtins: tag with noexecstackSaleem Abdulrasool2016-06-221-0/+2
| | | | | | | | | | | | 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
* [CompilerRT] use .p2align, .balign instead of .alignSaleem Abdulrasool2014-05-121-1/+1
| | | | | | | | | | | | 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. llvm-svn: 208578
* Move original compiler-rt functions (libgcc replacement) to lib/builtins ↵Alexey Samsonov2014-02-141-0/+34
directory llvm-svn: 201393
OpenPOWER on IntegriCloud