Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge branch 'master' of https://github.com/AbsInt/CompCert into towards_3.10 | David Monniaux | 2021-09-24 | 1 | -3/+3 |
|\ | |||||
| * | Fix wrong expansion of __builtin_memcpy_aligned | Xavier Leroy | 2021-09-23 | 1 | -2/+2 |
| | | | | | | | | | | | | | | | | | | In the "small" case, there was an error in the choice of temporary registers to use when one argument is a stack location and the other is a register. The chosen temporary could conflict with the argument that resides in a register. Fixes: #412 | ||||
| * | For __builtin_memcpy_aligned, watch out for alignment of stack offsets | Xavier Leroy | 2021-09-23 | 1 | -0/+1 |
| | | | | | | | | | | | | | | | | | | | | Stack offsets must be multiple of 8 when using ldp/stp instructions and multiple of the transferred size when using other load/store instructions with offsets greater than 256. For simplicity, always require that the offset is multiple of 8. Fixes: #410 | ||||
| * | Support __builtin_unreachable | Xavier Leroy | 2021-05-02 | 1 | -0/+4 |
| | | | | | | | | Not yet used for optimizations. | ||||
* | | fix issue 244 | Léo Gourdin | 2021-09-19 | 1 | -0/+1 |
| | | |||||
* | | [BROKEN] Merge with v3.9 : something broken for __builtin_expect in ↵ | Cyril SIX | 2021-06-01 | 1 | -0/+4 |
| | | | | | | | | cfrontend/C2C.ml | ||||
* | | Merge branch 'master' into merge_master_8.13.1 | Sylvain Boulmé | 2021-03-23 | 1 | -10/+38 |
|\| | | | | | | | | | | | | | | | | | PARTIAL MERGE (PARTLY BROKEN). See unsolved conflicts in: aarch64/TO_MERGE and riscV/TO_MERGE WARNING: interface of va_args and assembly sections have changed | ||||
| * | AArch64: macOS port | Xavier Leroy | 2020-12-26 | 1 | -10/+38 |
| | | | | | | | | | | This commit adds support for macOS (and probably iOS) running on AArch64 / ARM 64-bit / "Apple silicon" processors. | ||||
* | | fix builtin_sqrt | Sylvain Boulmé | 2020-12-17 | 1 | -1/+1 |
| | | |||||
* | | Merge branch 'kvx-work' into aarch64-peephole | Sylvain Boulmé | 2020-12-17 | 1 | -1/+11 |
|\ \ | |||||
| * | | Merge branch 'master' (Absint 3.8) into kvx-work-merge3.8 | David Monniaux | 2020-11-18 | 1 | -4/+12 |
| |\| | |||||
| | * | Added implementation for fmin/fmax for aarch64. | Bernhard Schommer | 2020-11-06 | 1 | -0/+4 |
| | | | | | | | | | | | | | | | The two built-in function map to the fmax and fmin instruction. Bug 30035 | ||||
| | * | Add __builtin_sqrt as synonymous for __builtin_fsqrt | Xavier Leroy | 2020-07-27 | 1 | -1/+1 |
| | | | | | | | | | | | | __builtin_sqrt (no "f") is the name used by GCC and Clang. | ||||
| | * | AArch64 implementation of __builtin_ctz* | Xavier Leroy | 2020-07-27 | 1 | -1/+7 |
| | | | | | | | | | | | | Using the "rbit" instruction (reverse bits). | ||||
| | * | No need to process __builtin_fabs in $ARCH/Asmexpand.ml | Xavier Leroy | 2020-07-27 | 1 | -2/+0 |
| | | | | | | | | | | | | __builtin_fabs has already been expanded in backend/Selection.v . | ||||
* | | | Big improvment in peephole, changing LDP/STP semantics | Léo Gourdin | 2020-12-10 | 1 | -5/+5 |
| | | | |||||
* | | | a first working draft on ldp/stp peephole | Léo Gourdin | 2020-12-04 | 1 | -4/+4 |
| | | | |||||
* | | | Adding semantics for Pldp | Léo Gourdin | 2020-12-02 | 1 | -2/+2 |
| | | | | | | | | | This commit prepare the backend for a peephole optimization in Asmblock. | ||||
* | | | Removing OrigAsmgen by moving the necessary functions in Asmgen.v | Léo Gourdin | 2020-11-25 | 1 | -3/+3 |
| | | | |||||
* | | | Preparation for postpass in aarch64 and refactoring | Léo Gourdin | 2020-11-02 | 1 | -40/+40 |
| | | | |||||
* | | | aarch64 compiles again (but ccomp generates incorrect assembly) | Sylvain Boulmé | 2020-10-23 | 1 | -51/+51 |
|/ / | |||||
* / | various fixes for aarch64 profiling | David Monniaux | 2020-04-10 | 1 | -1/+1 |
|/ | |||||
* | Revert "Remove `__builtin_nop` for some architectures. (#208)" | Bernhard Schommer | 2020-01-03 | 1 | -0/+2 |
| | | | | This reverts commit 4dfcd7d4be18e8bc437ca170782212aa06635a95. | ||||
* | Remove `__builtin_nop` for some architectures. (#208) | Bernhard Schommer | 2019-12-21 | 1 | -2/+0 |
| | | | | | | | The `__builtin_nop` function is documented only for PowerPC. It was added to the other architectures by copy paste, but has no known uses. So, remove `__builtin_nop` from all architectures but PowerPC. | ||||
* | The SP register has dwarf register number 31. | Bernhard Schommer | 2019-12-11 | 1 | -1/+1 |
| | |||||
* | Added dwarf register numbers for aarch64 | Bernhard Schommer | 2019-11-28 | 1 | -3/+18 |
| | |||||
* | Offset out of range for ldp/stp instructions | xavier.leroy | 2019-08-23 | 1 | -1/+3 |
| | | | | These instructions are generated by __builtin_memcpy. | ||||
* | AArch64 port | Xavier Leroy | 2019-08-08 | 1 | -0/+436 |
This commit adds a back-end for the AArch64 architecture, namely ARMv8 in 64-bit mode. |