summaryrefslogtreecommitdiff
path: root/lib/compiler-rt
Commit message (Collapse)AuthorAgeFilesLines
* feat(compiler-rt): update source filesMaksims Svecovs2023-05-112-2/+2
| | | | | | | | Update the compiler-rt source files to the tip of the llvm-project [1] [1]: https://github.com/llvm/llvm-project/commit/d9683a7 Change-Id: Icec9ec73094a2b39b0240fc8253c36e7485d3a98 Signed-off-by: Maksims Svecovs <maksims.svecovs@arm.com>
* fix(deps): add missing aeabi_memset.SBoyan Karatotev2023-02-132-0/+50
| | | | | | | | | This file provides __aeabi_memclr8 builtin which the Ubuntu 22.04 version of clang 14 needs to compile. Add it to prevent this oddity from failing the build. Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com> Change-Id: Id67aa0abba4a27c51b3ed6bb1be84b4e803b44bf
* feat(compiler-rt): update compiler-rt source filesDaniel Boulby2022-10-2416-681/+958
| | | | | | | | | | | | Update the compiler-rt source files to the tip of the llvm-project [1]. To do this some new header files were pulled in from the freebsd-src repo [2]. [1] https://github.com/llvm/llvm-project/commit/fae258e [2] https://github.com/freebsd/freebsd-src/commit/243a0eda Change-Id: I1a012b1fe04e127d35e208923877c98c5d999d00 Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
* fix(deps): add missing aeabi_memcpy.SDaniel Boulby2022-10-242-0/+30
| | | | | | | | | | Add missing aeabi_memcpy.S file from llvm compiler-rt library [1]. This is required for Aarch32 builds with clang. [1] https://github.com/llvm/llvm-project.git Change-Id: I7fd6ab1e81dd45d24afef49a3eb8fcdcbc5c082f Signed-off-by: Daniel Boulby <daniel.boulby@arm.com>
* compiler_rt: Import popcountdi2.c and popcountsi2.c filesLionel Debieve2020-01-203-1/+73
| | | | | | | | | | | Imported from the LLVM compiler_rt library on master branch as of 30 Oct 2018 (SVN revision: r345645). This is to get the __popcountsi2(si_int a) and __popcountdi2(di_int a) builtin which are required by a driver that uses a __builtin_popcount(). Change-Id: I8e0d97cebdd90d224690c8ce1b02e657acdddb25 Signed-off-by: Lionel Debieve <lionel.debieve@st.com>
* compiler_rt: Import aeabi_ldivmode.S file and dependenciesLionel Debieve2020-01-024-4/+107
| | | | | | | | | | | | Import aeabi_ldivmod.S with divmoddi4.c and divdi3.c from the LLVM compiler_rt library on master branch as of 30 Oct 2018 (SVN revision: r345645). This is to get the __aeabi_ldivmod builtin, which is required by a patch using signed long long division. Change-Id: Iee4c421deb3175142655e19074cd3732edd82227 Signed-off-by: Lionel Debieve <lionel.debieve@st.com>
* compiler_rt: Import lshrdi3.c fileSandrine Bailleux2018-11-062-1/+47
| | | | | | | | | | | Imported from the LLVM compiler_rt library on master branch as of 30 Oct 2018 (SVN revision: r345645). This is to get the __aeabi_llsr() builtin, which is required by a subsequent patch that uses a logical right shift operator in AArch32. Change-Id: I9884139a12855a8a87206fb572aaa7dd35582b09 Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
* compiler_rt: Import latest changes on int_lib.hSandrine Bailleux2018-11-061-6/+7
| | | | | | | | Imported from the LLVM compiler_rt library on master branch as of 30 Oct 2018 (SVN revision: r345645). Change-Id: I058cfb5894daf1d12e1ef971c0ba36b0aa089be5 Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
* libc: Fix all includes in codebaseAntonio Nino Diaz2018-08-221-4/+3
| | | | | | | | | The codebase was using non-standard headers. It is needed to replace them by the correct ones so that we can use the new libc headers. Change-Id: I530f71d9510cb036e69fe79823c8230afe890b9d Acked-by: Sumit Garg <sumit.garg@linaro.org> Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
* Import ctzdi2.c from LLVM compiler-rtSandrine Bailleux2017-07-262-1/+31
| | | | | | | | | | | | | | When using __builtin_ctzll() in AArch32 code, the compiler may translate that into a call to the __ctzdi2() function. In this case, the linking phase fails because TF doesn't provide an implementation for it. This patch imports the implementation of the __ctzdi2() function from LLVM's compiler-rt project and hooks it into TF's build system. The ctzdi2.c file is an unmodified copy from the master branch as of July 19 2017 (SVN revision: 308480). Change-Id: I96766a025ba28e1afc6ef6a5c4ef91d85fc8f32b Signed-off-by: Sandrine Bailleux <sandrine.bailleux@arm.com>
* compiler-rt: Remove unused int_util.[ch] filesdp-arm2017-05-243-97/+0
| | | | | Change-Id: I32fc523e3178b7e50191682241904d52499ff708 Signed-off-by: dp-arm <dimitris.papastamos@arm.com>
* Hook up LLVM compiler-rt in the build systemdp-arm2017-05-122-9/+40
| | | | | | | | | This patch enables compiler-rt for the AArch32 target. The code is not used for AArch64 as the architecture supports the 64-bit division and modulo operations natively. Change-Id: I1703a92872b0bb56ac0b98c67193830683963b13 Signed-off-by: dp-arm <dimitris.papastamos@arm.com>
* Import builtins from LLVM compiler-rt projectdp-arm2017-05-1210-0/+1160
These are needed to provide division and modulo operations for the AArch32 target. This code is entirely unmodified. Imported from compiler-rt master branch as of May 4 2017. Change-Id: I001e1809f2afd4bf8d4cc3d2296798809f607144 Signed-off-by: dp-arm <dimitris.papastamos@arm.com>