|
Revision tags: release/12.4.0, release/13.1.0 |
|
| #
874e27b5 |
| 09-Mar-2022 |
Dimitry Andric <[email protected]> |
Build compiler-rt against libunwind, not libcxxrt
Parts of compiler-rt are also built for libgcc_eh and libgcc_s, and these were already pointing to the libunwind unwind.h. For the sake of consisten
Build compiler-rt against libunwind, not libcxxrt
Parts of compiler-rt are also built for libgcc_eh and libgcc_s, and these were already pointing to the libunwind unwind.h. For the sake of consistency, also build compiler-rt itself against the libunwind unwind.h, not the libcxxrt one.
Approved by: re (gjb) MFC after: 3 days
(cherry picked from commit 7ecd99fa424df001028c5cddc52d25b29232f1af) (cherry picked from commit 4c622a8f051d8dd9fab0719b00a6eccdbd13ac62)
show more ...
|
|
Revision tags: release/12.3.0 |
|
| #
af732203 |
| 13-Jun-2021 |
Dimitry Andric <[email protected]> |
Merge llvm-project 12.0.1 release and follow-up fixes
Merge llvm-project main llvmorg-12-init-17869-g8e464dd76bef
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to l
Merge llvm-project 12.0.1 release and follow-up fixes
Merge llvm-project main llvmorg-12-init-17869-g8e464dd76bef
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-12-init-17869-g8e464dd76bef, the last commit before the upstream release/12.x branch was created.
PR: 255570
(cherry picked from commit e8d8bef961a50d4dc22501cde4fb9fb0be1b2532)
Merge llvm-project 12.0.0 release
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-12.0.0-0-gd28af7c654d8, a.k.a. 12.0.0 release.
PR: 255570
(cherry picked from commit d409305fa3838fb39b38c26fc085fb729b8766d5)
Disable strict-fp for powerpcspe, as it does not work properly yet
Merge commit 5c18d1136665 from llvm git (by Qiu Chaofan)
[SPE] Disable strict-fp for SPE by default
As discussed in PR50385, strict-fp on PowerPC SPE has not been handled well. This patch disables it by default for SPE.
Reviewed By: nemanjai, vit9696, jhibbits
Differential Revision: https://reviews.llvm.org/D103235
PR: 255570
(cherry picked from commit 715df83abc049b23d9acddc81f2480bd4c056d64)
Apply upstream libc++ fix to allow building with devel/xxx-xtoolchain-gcc
Merge commit 52e9d80d5db2 from llvm git (by Jason Liu):
[libc++] add `inline` for __open's definition in ifstream and ofstream
Summary:
When building with gcc on AIX, it seems that gcc does not like the `always_inline` without the `inline` keyword. So adding the inline keywords in for __open in ifstream and ofstream. That will also make it consistent with __open in basic_filebuf (it seems we added `inline` there before for gcc build as well).
Differential Revision: https://reviews.llvm.org/D99422
PR: 255570
(cherry picked from commit d099db25464b826c5724cf2fb5b22292bbe15f6e)
Undefine HAVE_(DE)REGISTER_FRAME in llvm's config.h on arm
Otherwise, the lli tool (enable by WITH_CLANG_EXTRAS) won't link on arm, stating that __register_frame is undefined. This function is normally provided by libunwind, but explicitly not for the ARM Exception ABI.
Reported by: oh PR: 255570
(cherry picked from commit f336b45e943c7f9a90ffcea1a6c4c7039e54c73c)
Merge llvm-project 12.0.1 rc2
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-12.0.1-rc2-0-ge7dac564cd0e, a.k.a. 12.0.1 rc2.
PR: 255570
(cherry picked from commit 23408297fbf3089f0388a8873b02fa75ab3f5bb9)
Revert libunwind change to fix backtrace segfault on aarch64
Revert commit 22b615a96593 from llvm git (by Daniel Kiss):
[libunwind] Support for leaf function unwinding.
Unwinding leaf function is useful in cases when the backtrace finds a leaf function for example when it caused a signal. This patch also add the support for the DW_CFA_undefined because it marks the end of the frames.
Ryan Prichard provided code for the tests.
Reviewed By: #libunwind, mstorsjo
Differential Revision: https://reviews.llvm.org/D83573
Reland with limit the test to the x86_64-linux target.
Bisection has shown that this particular upstream commit causes programs using backtrace(3) on aarch64 to segfault. This affects the lang/rust port, for instance. Until we can upstream to fix this problem, revert the commit for now.
Reported by: mikael PR: 256864
(cherry picked from commit 5866c369e4fd917c0d456f0f10b92ee354b82279)
Merge llvm-project 12.0.1 release
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvmorg-12.0.1-0-gfed41342a82f, a.k.a. 12.0.1 release.
PR: 255570
(cherry picked from commit 4652422eb477731f284b1345afeefef7f269da50)
compilert-rt: build out-of-line LSE atomics helpers for aarch64
Both clang >= 12 and gcc >= 10.1 now default to -moutline-atomics for aarch64. This requires a bunch of helper functions in libcompiler_rt.a, to avoid link errors like "undefined symbol: __aarch64_ldadd8_acq_rel".
(Note: of course you can use -mno-outline-atomics as a workaround too, but this would negate the potential performance benefit of the faster LSE instructions.)
Bump __FreeBSD_version so ports maintainers can easily detect this.
PR: 257392
(cherry picked from commit cc55ee8009a550810d38777fd6ace9abf3a2f6b4)
show more ...
|
|
Revision tags: release/13.0.0 |
|
| #
7fa2f2a6 |
| 06-Jan-2021 |
Alex Richardson <[email protected]> |
Rename NO_WERROR -> MK_WERROR=no
As suggested in D27598. This also supports MK_WERROR.clang=no and MK_WERROR.gcc=no to support the existing NO_WERROR.<compiler> uses.
Reviewed By: brooks Differenti
Rename NO_WERROR -> MK_WERROR=no
As suggested in D27598. This also supports MK_WERROR.clang=no and MK_WERROR.gcc=no to support the existing NO_WERROR.<compiler> uses.
Reviewed By: brooks Differential Revision: https://reviews.freebsd.org/D27601
show more ...
|
| #
a723bb66 |
| 28-Dec-2020 |
Ryan Libby <[email protected]> |
libcompiler_rt: stop building with stack smashing protection
libcompiler_rt implements certain functions that clang and gcc emit calls to as part of their codegen (e.g. for extended width math). Bu
libcompiler_rt: stop building with stack smashing protection
libcompiler_rt implements certain functions that clang and gcc emit calls to as part of their codegen (e.g. for extended width math). Build it without stack smashing protection (SSP, -fstack-protector) in order to support building binaries without SSP, especially the dynamic linker. Besides, SSP is probably not very valuable in this library.
Reviewed by: arichardson, dim, kib Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D27786
show more ...
|
|
Revision tags: release/12.2.0, release/11.4.0 |
|
| #
c8b5e3de |
| 05-Nov-2019 |
Conrad Meyer <[email protected]> |
Fix llvm-libunwind userspace build on ARM
GCC's libgcc exports a few ARM-specific symbols for ARM EABI, AEABI, or EHABI or whatever it's called. Export the same ones from LLVM-libunwind's libgcc_s,
Fix llvm-libunwind userspace build on ARM
GCC's libgcc exports a few ARM-specific symbols for ARM EABI, AEABI, or EHABI or whatever it's called. Export the same ones from LLVM-libunwind's libgcc_s, on ARM. As part of this, convert libgcc_s from a direct Version.map to one constructed from component Symbol.map files. This allows the ARM-specific Symbol.map to be included only on ARM.
Fix ARM-only oddities in struct name/aliases in LLVM-libunwind to match non-ARM definitions and ARM-specific expectations in libcxxrt / libcompiler_rt.
No functional change intended for non-ARM architectures.
This commit does not actually flip the switch for ARM defaults from libgcc to llvm-libunwind, but makes it possible (to compile, anyway).
show more ...
|
|
Revision tags: release/12.1.0, release/11.3.0, release/12.0.0, release/11.2.0, release/10.4.0, release/11.1.0 |
|
| #
d006dde2 |
| 21-Mar-2017 |
Dimitry Andric <[email protected]> |
Gcc has incompatible internal declarations for __divtc3 and __multc3 as defined in compiler-rt, but it has no option to silence its warning, so make gcc warnings for libcompiler_rt non-fatal.
Notice
Gcc has incompatible internal declarations for __divtc3 and __multc3 as defined in compiler-rt, but it has no option to silence its warning, so make gcc warnings for libcompiler_rt non-fatal.
Noticed by: lwhsu MFC after: 3 days
show more ...
|
| #
d7510094 |
| 23-Feb-2017 |
Jung-uk Kim <[email protected]> |
Remove an assembler flag, which is redundant since r309124. The upstream took care of it by introducing a macro NO_EXEC_STACK_DIRECTIVE.
http://llvm.org/viewvc/llvm-project?rev=273500&view=rev
Rev
Remove an assembler flag, which is redundant since r309124. The upstream took care of it by introducing a macro NO_EXEC_STACK_DIRECTIVE.
http://llvm.org/viewvc/llvm-project?rev=273500&view=rev
Reviewed by: dim
show more ...
|
|
Revision tags: release/11.0.1 |
|
| #
040b3049 |
| 27-Sep-2016 |
Ed Maste <[email protected]> |
libcompiler_rt: move file list to Makefile.inc for reuse elsewhere
Also switch to the style used in the clang390-import branch to reduce future conflicts.
Reviewed by: dim Sponsored by: The FreeBSD
libcompiler_rt: move file list to Makefile.inc for reuse elsewhere
Also switch to the style used in the clang390-import branch to reduce future conflicts.
Reviewed by: dim Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D8039
show more ...
|
| #
d7e002ff |
| 23-Sep-2016 |
Ed Maste <[email protected]> |
libcompiler_rt: use ${SRCTOP} for the top of the FreeBSD tree
|
|
Revision tags: release/11.0.0 |
|
| #
2a0eade7 |
| 05-Sep-2016 |
Dimitry Andric <[email protected]> |
Fix building some arm-specific primitives for libcompiler_rt. This was an unfortunate search and replace error.
|
| #
2c0e9e2a |
| 18-May-2016 |
Warner Losh <[email protected]> |
Make armv6 hard float abi by default. Kill armv6hf. Allow CPUTYPE=soft to build the current soft-float abi libraries. Add UPDATING entry to announce this.
Approved by: re@ (gjb)
|
|
Revision tags: release/10.3.0 |
|
| #
a70cba95 |
| 04-Feb-2016 |
Glen Barber <[email protected]> |
First pass through library packaging.
Sponsored by: The FreeBSD Foundation
|
| #
96cdb0ab |
| 29-Sep-2015 |
Konstantin Belousov <[email protected]> |
Annotate arm userspace assembler sources stating their tolerance to the non-executable stack.
Reviewed by: andrew Sponsored by: The FreeBSD Foundation
|
|
Revision tags: release/10.2.0 |
|
| #
95f23d6e |
| 16-Apr-2015 |
Ed Maste <[email protected]> |
compiler_rt: add floatunsitf for arm64
It provides unsigned integer to quad-precision conversion.
Sponsored by: The FreeBSD Foundation
|
| #
eade5b38 |
| 08-Apr-2015 |
Ed Maste <[email protected]> |
compiler-rt: include 128-bit quad precision fp support only on arm64
Other architectures do not use quad precision long double and don't need these runtime support routines.
Differential Revision:
compiler-rt: include 128-bit quad precision fp support only on arm64
Other architectures do not use quad precision long double and don't need these runtime support routines.
Differential Revision: https://reviews.freebsd.org/D2252 Reviewed by: dim Sponsored by: The FreeBSD Foundation
show more ...
|
| #
6853d12d |
| 07-Apr-2015 |
Ed Maste <[email protected]> |
compiler-rt: add floatditf and floatunditf
These are long integer (di_int/du_int) to quad precision floating point conversions. They may be reworked based on upstream discussion. These versions are
compiler-rt: add floatditf and floatunditf
These are long integer (di_int/du_int) to quad precision floating point conversions. They may be reworked based on upstream discussion. These versions are here to support arm64 world builds.
Reviewed by: ed Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D2174
show more ...
|
| #
13553dc6 |
| 07-Apr-2015 |
Ed Maste <[email protected]> |
compiler-rt: Implement multc3 - quad-precision complex multiplication
This may be reworked based on upstream discussion. This version is here to support arm64 world builds.
Reviewed by: ed Sponsore
compiler-rt: Implement multc3 - quad-precision complex multiplication
This may be reworked based on upstream discussion. This version is here to support arm64 world builds.
Reviewed by: ed Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D2173
show more ...
|
| #
b4a5ecf6 |
| 30-Mar-2015 |
Ed Maste <[email protected]> |
compiler-rt: Build additional quad precision floating point builtins
These are needed for arm64
Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D2160
|
| #
25e141ed |
| 14-Mar-2015 |
Dimitry Andric <[email protected]> |
Pull in r231965 from upstream compiler-rt trunk (by Jörg Sonnenberger):
Refactor float to integer conversion to share the same code. 80bit Intel/PPC long double is excluded due to lacking suppo
Pull in r231965 from upstream compiler-rt trunk (by Jörg Sonnenberger):
Refactor float to integer conversion to share the same code. 80bit Intel/PPC long double is excluded due to lacking support for the abstraction. Consistently provide saturation logic. Extend to long double on 128bit IEEE extended platforms.
Initial patch with test cases from GuanHong Liu. Reviewed by Steve Canon.
Differential Revision: http://reviews.llvm.org/D2804
Pull in r232107 from upstream compiler-rt trunk (by Ed Maste):
Use signed int implementation for __fixint
Requested by: emaste
show more ...
|
| #
d6a052e0 |
| 09-Jan-2015 |
Andrew Turner <[email protected]> |
With the update of compiler-rt we try to build a number of files that don't build on some ARM platforms, provide symbols we already provide in libc, or don't exist. Remove these from the build. Some
With the update of compiler-rt we try to build a number of files that don't build on some ARM platforms, provide symbols we already provide in libc, or don't exist. Remove these from the build. Some of these may return later on specific targets.
Differential Revision: https://reviews.freebsd.org/D1468 Reviewed by: dim, imp
show more ...
|
|
Revision tags: release/10.1.0 |
|
| #
eabf853d |
| 01-Oct-2014 |
Andrew Turner <[email protected]> |
Clean up detection of hard-float ABIs. As with big-endian in r272368 we can check against arm*hf*.
|
| #
6d4766c1 |
| 01-Oct-2014 |
Andrew Turner <[email protected]> |
Remove MK_ARM_EABI, the armeb issues have been fixed. The code to support the oabi is still in the tree, but it is expected this will be removed as developers work on surrounding code.
With this com
Remove MK_ARM_EABI, the armeb issues have been fixed. The code to support the oabi is still in the tree, but it is expected this will be removed as developers work on surrounding code.
With this commit the ARM EABI is the only supported supported ABI by FreeBSD on ARMa 32-bit processors.
X-MFC after: never Relnotes: yes Differential Revision: https://reviews.freebsd.org/D876
show more ...
|
|
Revision tags: release/9.3.0 |
|
| #
c6063d0d |
| 06-May-2014 |
Warner Losh <[email protected]> |
Use src.opts.mk in preference to bsd.own.mk except where we need stuff from the latter.
|
| #
73279d41 |
| 23-Mar-2014 |
Andrew Turner <[email protected]> |
Add a new ARM TARGET_ARCH, armv6hf. This is considered experimental.
This targets the existing ARMv6 and ARMv7 SoCs that contain a VFP unit. This is an optional coprocessors may not be present in al
Add a new ARM TARGET_ARCH, armv6hf. This is considered experimental.
This targets the existing ARMv6 and ARMv7 SoCs that contain a VFP unit. This is an optional coprocessors may not be present in all devices, however it appears to be in all current SoCs we support.
armv6hf targets the VFP variant of the ARM EABI and our copy of gcc is too old to support this. Because of this there are a number of WITH/WITHOUT options that are unsupported and must be left as the default value. The options and their required value are: * WITH_ARM_EABI * WITHOUT_GCC * WITHOUT_GNUCXX
In addition, without an external toolchain, the following need to be left as their default: * WITH_CLANG * WITH_CLANG_IS_CC
As there is a different method of passing float and double values to functions the ABI is incompatible with existing armv6 binaries. To use this a full rebuild of world is required. Because no floating point values are passed into the kernel an armv6 kernel with VFP enabled will work with an armv6hf userland and vice versa.
show more ...
|
|
Revision tags: release/10.0.0, release/9.2.0 |
|
| #
e1c0c642 |
| 31-Aug-2013 |
David Chisnall <[email protected]> |
Unconditionally compile the __sync_* atomics support functions into compiler-rt for ARM. This is quite ugly, because it has to work around a clang bug that does not allow built-in functions to be def
Unconditionally compile the __sync_* atomics support functions into compiler-rt for ARM. This is quite ugly, because it has to work around a clang bug that does not allow built-in functions to be defined, even when they're ones that are expected to be built as part of a library.
Reviewed by: ed
show more ...
|