|
Revision tags: release/13.4.0-p5, release/13.5.0-p1, release/14.2.0-p3, release/13.5.0, release/14.2.0-p2, release/14.1.0-p8, release/13.4.0-p4, release/14.1.0-p7, release/14.2.0-p1, release/13.4.0-p3, release/14.2.0, release/13.4.0, release/14.1.0, release/13.3.0 |
|
| #
c9157d92 |
| 18-Dec-2023 |
Dimitry Andric <[email protected]> |
Merge llvm-project main llvmorg-18-init-15088-gd14ee76181fb
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvm-project main llvmorg-18-init-15088-gd14ee76181fb.
Merge llvm-project main llvmorg-18-init-15088-gd14ee76181fb
This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb and openmp to llvm-project main llvmorg-18-init-15088-gd14ee76181fb.
PR: 276104 MFC after: 1 month
(cherry picked from commit 5f757f3ff9144b609b3c433dfd370cc6bdc191ad)
show more ...
|
|
Revision tags: release/14.0.0 |
|
| #
d0b2dbfa |
| 16-Aug-2023 |
Warner Losh <[email protected]> |
Remove $FreeBSD$: one-line sh pattern
Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
|
| #
f5761726 |
| 23-Jul-2023 |
Dimitry Andric <[email protected]> |
Move LIBADD lines from usr.bin/clang/*/Makefile one level up
Some utilities under usr.bin/clang were only linked to libz, while most others were linked to libz and libzstd. Make this consistent, and
Move LIBADD lines from usr.bin/clang/*/Makefile one level up
Some utilities under usr.bin/clang were only linked to libz, while most others were linked to libz and libzstd. Make this consistent, and remove repetition, by moving these LIBADD lines to usr.bin/clang/clang.prog.mk and usr.bin/clang/clang.prog.mk.
MFC after: 3 days
show more ...
|
|
Revision tags: release/13.2.0 |
|
| #
4dc3b1fa |
| 29-Mar-2023 |
Dimitry Andric <[email protected]> |
Revert "Ensure .inc files are regenerated when llvm/clang tblgen binaries change"
This reverts commit ab80f0b21fbb9c44d40e6f7a99090188f4ed2f71. The intent of this change was to avoid possible compil
Revert "Ensure .inc files are regenerated when llvm/clang tblgen binaries change"
This reverts commit ab80f0b21fbb9c44d40e6f7a99090188f4ed2f71. The intent of this change was to avoid possible compilation errors when certain .inc files were not regenerated, but the method turns out to cause way more rebuilds than anticipated. Another method will have to be found, and in the mean time, WITH_CLEAN is the solution that always works.
Fixes: ab80f0b21fbb
show more ...
|
| #
d8ed7fa3 |
| 29-Mar-2023 |
Dimitry Andric <[email protected]> |
Revert "Rework {clang,lldb,llvm}-tblgen invocations to add --write-if-changed"
This reverts commit 8f391d9098083044793ff036dff8c96930fb1553. There are still a bunch of problems, and apparently ${.AL
Revert "Rework {clang,lldb,llvm}-tblgen invocations to add --write-if-changed"
This reverts commit 8f391d9098083044793ff036dff8c96930fb1553. There are still a bunch of problems, and apparently ${.ALLSRC} does not work as I expected.
Fixes: 8f391d909808
show more ...
|
| #
8f391d90 |
| 29-Mar-2023 |
Dimitry Andric <[email protected]> |
Rework {clang,lldb,llvm}-tblgen invocations to add --write-if-changed
This flag ensures that the tblgen tools do not actually touch the produced .inc file, if there are no changes to the contents. I
Rework {clang,lldb,llvm}-tblgen invocations to add --write-if-changed
This flag ensures that the tblgen tools do not actually touch the produced .inc file, if there are no changes to the contents. In turn, this may prevent a number of rebuilds of files that include such .inc files, saving build time.
While here, ensure that the shell invocations to locate the used tblgen binary do not show unnecessary error messages.
Reported by: des MFC after: 1 week
show more ...
|
| #
ab80f0b2 |
| 25-Feb-2023 |
Dimitry Andric <[email protected]> |
Ensure .inc files are regenerated when llvm/clang tblgen binaries change
When doing a fully incremental build (with WITHOUT_CLEAN enabled), from a commit before llvm 15 was merged (3264f6b88fce), to
Ensure .inc files are regenerated when llvm/clang tblgen binaries change
When doing a fully incremental build (with WITHOUT_CLEAN enabled), from a commit before llvm 15 was merged (3264f6b88fce), to a commit after that, a number of .inc files were not regenerated. This could lead to unexpected compilation errors when these .inc files were included from llvm-project sources, similar to:
In file included from /usr/src/contrib/llvm-project/clang/lib/CodeGen/CGBuiltin.cpp:8268: /usr/obj/usr/src/amd64.amd64/lib/clang/libclang/clang/Basic/arm_mve_builtin_cg.inc:279:18: error: no matching constructor for initialization of 'clang::CodeGen::Address' Address Val2 = Address(Val1, CharUnits::fromQuantity(2)); ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Work around this by making the .inc files dependent on the tblgen binary used for generating them. E.g., we can relatively safely assume that if the binary gets updated, the .inc files must also be updated. (Although this is not 100% optimal, the gain by complicating things even more is probaby not worth the effort.)
MFC after: 3 days Reviewed by: emaste Differential Revision: https://reviews.freebsd.org/D38770
show more ...
|
|
Revision tags: release/12.4.0 |
|
| #
86edb11e |
| 18-Nov-2022 |
Ed Maste <[email protected]> |
Always install llvm-objdump as objdump
Instead of providing no /usr/bin/objdump when LLVM_BINUTILS is false.
PR: 267854 [exp-run] Reviewed by: dim MFC after: 2 weeks Sponsored by: The FreeBSD Foun
Always install llvm-objdump as objdump
Instead of providing no /usr/bin/objdump when LLVM_BINUTILS is false.
PR: 267854 [exp-run] Reviewed by: dim MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D37445
show more ...
|
|
Revision tags: release/13.1.0, release/12.3.0 |
|
| #
021385ab |
| 06-Sep-2021 |
Alex Richardson <[email protected]> |
Add WITH_LLVM_BINUTILS to install LLVM binutils instead of Elftoolchain
When WITH_LLVM_BINUTILS is set, we will install the LLVM binutils as ar/ranlib/nm/objcopy/etc. instead of the elftoolchain one
Add WITH_LLVM_BINUTILS to install LLVM binutils instead of Elftoolchain
When WITH_LLVM_BINUTILS is set, we will install the LLVM binutils as ar/ranlib/nm/objcopy/etc. instead of the elftoolchain ones. Having the LLVM binutils instead of the elftoolchain ones allows us to use features such as LTO that depend on binutils that understand LLVM IR. Another benefit will be an improved user-experience when compiling with AddressSanitizer, since ASAN does not symbolize backtraces correctly if addr2line is elftoolchain addr2line instead of llvm-symbolizer. See https://lists.freebsd.org/archives/freebsd-toolchain/2021-July/000062.html for more details.
This is currently off by default but will be turned on by default at some point in the near future.
Reviewed By: emaste
Differential Revision: https://reviews.freebsd.org/D31060
show more ...
|
|
Revision tags: release/13.0.0, release/12.2.0 |
|
| #
48aaf27b |
| 06-Aug-2020 |
Dimitry Andric <[email protected]> |
Update Makefiles under lib/clang and usr.bin/clang for 11.0.0 builds, and also bump the version in the mtree files.
|
|
Revision tags: release/11.4.0 |
|
| #
0b57cec5 |
| 20-Dec-2019 |
Dimitry Andric <[email protected]> |
Move all sources from the llvm project into contrib/llvm-project.
This uses the new layout of the upstream repository, which was recently migrated to GitHub, and converted into a "monorepo". That i
Move all sources from the llvm project into contrib/llvm-project.
This uses the new layout of the upstream repository, which was recently migrated to GitHub, and converted into a "monorepo". That is, most of the earlier separate sub-projects with their own branches and tags were consolidated into one top-level directory, and are now branched and tagged together.
Updating the vendor area to match this layout is next.
show more ...
|
|
Revision tags: release/12.1.0, release/11.3.0, release/12.0.0 |
|
| #
801cfbaa |
| 26-Nov-2018 |
Ed Maste <[email protected]> |
llvm-objdump: initial man page
Based on llvm-objdump's online documentation and usage information. This serves as a starting point; additional detail and cleanup still required.
Also being submitte
llvm-objdump: initial man page
Based on llvm-objdump's online documentation and usage information. This serves as a starting point; additional detail and cleanup still required.
Also being submitted upstream in LLVM review D54864. I expect to use this bespoke copy while we have LLVM 6.0 or 7.0 in FreeBSD; when we update to LLVM 8.0 it should be upstream and we will switch to it.
PR: 233437 Reviewed by: bcr (man formatting) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D18309
show more ...
|
|
Revision tags: release/11.2.0, release/10.4.0, release/11.1.0 |
|
| #
09bfd043 |
| 03-Jan-2017 |
Dimitry Andric <[email protected]> |
Initial updates to llvm/clang build glue.
|
|
Revision tags: release/11.0.1, release/11.0.0 |
|
| #
986e05bc |
| 26-Aug-2016 |
Dimitry Andric <[email protected]> |
Completely revamp the way llvm, clang and lldb are built.
* Bootstrap llvm-tblgen and clang-tblgen with a minimal llvm static library, that has no other dependencies. * Roll up all separate llvm l
Completely revamp the way llvm, clang and lldb are built.
* Bootstrap llvm-tblgen and clang-tblgen with a minimal llvm static library, that has no other dependencies. * Roll up all separate llvm libraries into one big static libllvm. * Similar for all separate clang and lldb static libraries. * For all these libraries, generate their .inc files only once. * Link all llvm tools (including extra) against the big libllvm. * Link clang and clang-format against the big libllvm and libclang. * Link lldb against the big libllvm, libclang and liblldb.
N.B.: This is work in progress, some details may still be missing.
It also heavily depends on bsd.*.mk's support for SRCS and DPSRCS with relative pathnames, which apparently does not always work as expected. For building llvm, clang and lldb though, it seems to work just fine.
The main idea behind this restructuring is maintainability and build peformance. The previous large number of very small libraries, each with their own generated files and dependencies was slow to traverse and hard to understand.
Possible future improvements: * Only build certain targets, e.g. for most regular users having just one target will be fine. This will shave off some build time. * Building the big llvm, clang and lldb libraries as shared (private) libraries. * Adding other components from the LLVM project, such as lld.
show more ...
|
| #
7fff4413 |
| 19-Aug-2016 |
Dimitry Andric <[email protected]> |
Update build glue for clang and the llvm/clang extras.
|
|
Revision tags: release/10.3.0 |
|
| #
dbc595b2 |
| 06-Jan-2016 |
Dimitry Andric <[email protected]> |
Some additional llvm tools need libz. While here, consistently use LIBADD+=.
|
| #
ffa548ae |
| 31-Dec-2015 |
Dimitry Andric <[email protected]> |
Next part of updating llvm/clang build glue: getting the WITH_CLANG_EXTRAS tools built.
|
| #
eacae6dc |
| 04-Dec-2015 |
Bryan Drewery <[email protected]> |
Fix LDADD/DPADD that should be LIBADD.
Sponsored by: EMC / Isilon Storage Division
|
|
Revision tags: release/10.2.0 |
|
| #
ebeff3f9 |
| 30-May-2015 |
Dimitry Andric <[email protected]> |
Update Makefiles and other build glue for llvm/clang 3.7.0, as of trunk r238337.
|
| #
1ae6788e |
| 26-Jan-2015 |
Dimitry Andric <[email protected]> |
Update llvm and clang library and binary Makefiles for 3.6.0 rc1.
|
| #
f91be99b |
| 10-Jan-2015 |
Dimitry Andric <[email protected]> |
Remove a few redundant DPADD/LDADD pairs in llvm utilities.
|
| #
47a80b92 |
| 07-Jan-2015 |
Dimitry Andric <[email protected]> |
Add the AArch64 llvm backend to the build to allow for early testing and to ease any rework of how clang is built to take arm64 in to account.
Submitted by: andrew Reviewed by: andrew, emaste Differ
Add the AArch64 llvm backend to the build to allow for early testing and to ease any rework of how clang is built to take arm64 in to account.
Submitted by: andrew Reviewed by: andrew, emaste Differential Revision: https://reviews.freebsd.org/D1446
show more ...
|
| #
046ffce1 |
| 24-Nov-2014 |
Dimitry Andric <[email protected]> |
Update llvm and clang binary Makefiles.
|
|
Revision tags: release/10.1.0, release/9.3.0 |
|
| #
3bdf7758 |
| 13-Apr-2014 |
Warner Losh <[email protected]> |
NO_MAN= has been deprecated in favor of MAN= for some time, go ahead and finish the job. ncurses is now the only Makefile in the tree that uses it since it wasn't a simple mechanical change, and will
NO_MAN= has been deprecated in favor of MAN= for some time, go ahead and finish the job. ncurses is now the only Makefile in the tree that uses it since it wasn't a simple mechanical change, and will be addressed in a future commit.
show more ...
|
| #
137470fb |
| 20-Feb-2014 |
Dimitry Andric <[email protected]> |
Add Makefile glue to build the Sparc backend libraries and link them into the clang executable.
|