summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/builtins/x86_64
Commit message (Collapse)AuthorAgeFilesLines
* [builtins] Use single line C++/C99 comment stylePetr Hosek2019-04-285-19/+16
| | | | | | | | | | | Use the uniform single line C++/99 style for code comments. This is part of the cleanup proposed in "[RFC] compiler-rt builtins cleanup and refactoring". Differential Revision: https://reviews.llvm.org/D60352 llvm-svn: 359411
* [builtins] Reformat builtins with clang-formatPetr Hosek2019-04-283-12/+3
| | | | | | | | | | | Update formatting to use the LLVM style. This is part of the cleanup proposed in "[RFC] compiler-rt builtins cleanup and refactoring". Differential Revision: https://reviews.llvm.org/D60351 llvm-svn: 359410
* Update more file headers across all of the LLVM projects in the monorepoChandler Carruth2019-01-195-12/+15
| | | | | | | | | | | | | | | | | | 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
* Update the file headers across all of the LLVM projects in the monorepoChandler Carruth2019-01-193-6/+9
| | | | | | | | | | | | | | | | | to reflect the new license. 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: 351636
* [builtins] Make some ISA macro checks work with MSVCReid Kleckner2017-04-072-2/+2
| | | | llvm-svn: 299786
* Delete remaining compiler-rt makefilesChris Bieneman2016-08-231-20/+0
| | | | | | | | | | | | | | | Summary: Since we can now build the builtins without a full toolchain these files should no longer be needed. This is the last vestige of autoconf! Reviewers: compnerd, iains, jroelofs Subscribers: dberris, llvm-commits Differential Revision: https://reviews.llvm.org/D23777 llvm-svn: 279539
* builtins: tag with noexecstackSaleem Abdulrasool2016-06-223-0/+9
| | | | | | | | | | | | 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
* Support for 32-bit mingw-w64 in compiler-rt.Martell Malone2015-11-032-2/+44
| | | | | | | | | | | | Add chkstk/alloca for gcc objects. Replace or instructions with test, the latter should be marginally more efficent, as it does not write to memory. Differential Revision: http://reviews.llvm.org/D14044 Patch by vadimcn llvm-svn: 251928
* Add missing chkstk.S files from r242539Reid Kleckner2015-07-171-0/+39
| | | | llvm-svn: 242540
* builtins: cleanup constant data section selectionSaleem Abdulrasool2014-12-103-28/+5
| | | | | | | | | | Each of the object formats use a different directive for selecting the constant section. Use a macro to avoid the duplication across a number of files. Also correct a small macro mismatch on the Windows case (HIDDEN_DIRECTIVE -> HIDDEN). Patch by Vadim Chugunov! llvm-svn: 223910
* builtins: add missed files from previous commitsSaleem Abdulrasool2014-07-263-2/+10
| | | | | | | This adds missed files in SVN r214033 for alignment and corrects a change from SVN r214034 for fixing compilation with GCC. llvm-svn: 214039
* builtins: make the x86_64 compatible with GASSaleem Abdulrasool2014-07-263-3/+3
| | | | | | | | | | | | The .rodata directive was added on the IA-64 (Itanium) platform. The LLVM IAS supports the .rodata on i386 and x86_64 as well. There is no reason to really restrict compilation of the builtins to just clang. By explicitly indicating that the data is meant to be pushed into the .rodata section via the .section .rodata, the assembly is made compatible with clang and gcc (with GAS). This will enable building these routines on the Linux buildbots via CMake. llvm-svn: 214012
* compiler-rt: prefer .rodata for non MachO targetsSaleem Abdulrasool2014-06-013-6/+22
| | | | | | | | Place constants into .rdata if targeting ELF or COFF/PE. This should be functionally identical, however, the data would be placed into a different section. This is purely a cleanup change. llvm-svn: 209986
* compiler-rt: whitespace and uniformity for armSaleem Abdulrasool2014-06-013-14/+23
| | | | | | | | | Make the whitespace a bit more uniform in the various assembly routines. This also makes the assembly files a bit more uniform on the ARM side by explicitly stating that it is using the unified syntax and that the contents of the code is in the text section (or segment). No functional change. llvm-svn: 209985
* [CompilerRT] use .p2align, .balign instead of .alignSaleem Abdulrasool2014-05-123-7/+7
| | | | | | | | | | | | 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-147-0/+208
directory llvm-svn: 201393
OpenPOWER on IntegriCloud