aboutsummaryrefslogtreecommitdiff
path: root/clang/cmake/caches
AgeCommit message (Collapse)AuthorFilesLines
2024-01-23[CMake][Release] Add option for enabling PGO to release cache file. (#78823)Tom Stellard1-16/+57
The option is LLVM_RELEASE_ENABLE_PGO and it's turned on by default. --------- Co-authored-by: Petr Hosek <phosek@google.com>
2024-01-23[CMake][PGO] Add libunwind to list of stage1 runtimes (#78869)Tom Stellard1-1/+1
This fixes the build since 8f90e6937a1fac80873bb2dab5f382c82ba1ba4e which made libcxxabi use llvm's libunwind by default. Fixes #78487
2024-01-22Revert "Reland [Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT ↵Amir Ayupov1-1/+1
options (#69133)" This reverts commit b83b8d3fd17885438b0ea154e07088d877d293a8. Breaks buildbots e.g. https://lab.llvm.org/buildbot/#/builders/225/builds/29950
2024-01-22Reland [Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options ↵Amir Ayupov1-1/+1
(#69133) This reverts commit 6c47419703acfcd7dcca9e30ab9dba6a7a42f977. Default to CLANG_BOLT=OFF Test Plan: Build a regular Clang build.
2024-01-22Revert "[Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options ↵David Spickett1-1/+1
(#69133)" This reverts commit 745883bba69007f1d2c5135f3d5b0f1efcfc82cd. This is failing to configure on many of our bots: https://lab.llvm.org/buildbot/#/builders/245/builds/19468 This did not get caught right away because generally bots only clean the build every so often.
2024-01-21[Clang][CMake] Support perf, LBR, and Instrument CLANG_BOLT options (#69133)Amir Ayupov1-1/+1
Split up and refactor CLANG_BOLT_INSTRUMENT into support for BOLT instrumentation, perf no-LBR and perf with LBR profiling. Differential Revision: https://reviews.llvm.org/D143617
2024-01-16[CMake] Include riscv32-unknown-elf runtimes in Fuchsia toolchain (#78323)Petr Hosek2-2/+39
This contains compiler-rt builtins and llvm-libc for baremetal use. Differential Revision: https://reviews.llvm.org/D155337
2024-01-11[CMake][Release] Add option for enabling LTO to cache file (#77035)Tom Stellard1-1/+12
This option is LLVM_RELEASE_ENABLE_LTO and it's turned on by default.
2024-01-11[Fuchsia] Add stage2 cmake optionsDaniel Thornburgh1-0/+16
2024-01-08Revert "[CMake] Include riscv32-unknown-elf runtimes in Fuchsia toolchain ↵Petr Hosek1-37/+1
(#76849)" This reverts commit 78550bef98347bccbf0e8e5fb66dc59718fc35ec since it broke the two stage build.
2024-01-07[CMake] Include riscv32-unknown-elf runtimes in Fuchsia toolchain (#76849)Petr Hosek1-1/+37
This contains compiler-rt builtins and llvm-libc for baremetal use. Differential Revision: https://reviews.llvm.org/D155337
2024-01-04test-release.sh: Add a CMake cache file for 3-stage release builds (#75903)Tom Stellard1-0/+41
You can now pass the -use-cmake-cache option to test-release.sh and it will use a predefined cache file for building the release. This will make it easier to reproduce the builds and add other enhancements like PGO or bolt optimizations. --------- Co-authored-by: Konrad Kleine <konrad.kleine@posteo.de>
2023-12-13[CMake] Include opt-viewer in Fuchsia toolchain (#75296)Petr Hosek1-0/+1
This is necessary for visualization of optimization remarks.
2023-11-08[libc++][hardening] Fix references to old names for hardening modes (#71743)Konstantin Varlamov2-2/+2
This should fix some builds broken by https://github.com/llvm/llvm-project/pull/70575
2023-11-06[CMake][Fuchsia] Use unchecked hardening mode for libc++Petr Hosek2-0/+2
We set LLVM_ENABLE_ASSERTIONS in some builds which is now translated to LIBCXX_HARDENING_MODE=safe, but our codebase is not yet clean and we're getting assertion failures.
2023-11-06[CMake][Fuchsia] Set the runtimes for the second stagePetr Hosek1-0/+3
This is a temporary workaround until we figure out the right solution.
2023-10-19[Fuchsia] Add lldb-dap to LLDB distributionDaniel Thornburgh1-0/+1
2023-10-04[runtimes] Fix parsing of LIB{CXX,CXXABI,UNWIND}_TEST_PARAMS (#67691)Alexander Richardson1-3/+11
Since 78d649a417b48cb8a2ba2e755f0e7c8fb8b1bb83 the recommended way to pass an executor is to use the _TEST_PARAMS variable, which means we now pass more complicated value (including ones that may contain multiple `=`) as part of this variable. However, the `REGEX REPLACE` being used has greedy matches so everything up to the last = becomes part of the variable name which results in invalid syntax in the generated lit config file. This was noticed due to builder failures for those using the CrossWinToARMLinux.cmake cache file. --------- Co-authored-by: Vladimir Vereschaka <vvereschaka@accesssoftek.com>
2023-09-26[libc++][lit] Allow overriding the executor for tests (#66545)Alexander Richardson1-3/+3
This is useful when trying to run multiple tests with different arguments to the executor script. This is needed in my case since I do not know the correct ssh connection arguments when building libc++. The testing script I have spawns multiple QEMU instances that listen on a given port on localhost and runs lit with the --num-shards/--run-shard argument. In order to connect each shard to the right QEMU instances I need to customize the arguments passed to ssh.py (--extra-ssh-args and --extra-scp-args) but can't do this at configure time since the target port is only known when running the tests but not when calling CMake. This change allows me to pass `executor=ssh.py <args>` to lit once I know the right hostname/port for running the tests. This also deprecates the `LIB{CXX,CXXABI,UNWIND}_EXECUTOR` CMake variable as the same can be achieved by adding `executor=...` to the `LIB{CXX,CXXABI,UNWIND}_TEST_PARAMS` variable.
2023-09-25[CMake] Add VE cache file (#65921)Kazushi Marukawa1-0/+129
Add VE cache file for the ease of compiling.
2023-09-22[Fuchsia] Build with -fvisibility=default (#67067)Alex Brachet1-0/+6
There was an issue with relative vtables when two TU's which define the same vtable object are built with different default visibilities. Some TU's are built with -fvisibility=hidden in the code base, grep for CMAKE_CXX_VISIBILITY_PRESET to find them. Our whole toolchain, is statically linked, and built with -fPIE anyway, so the cost of overriding local CMAKE_CXX_VISIBILITY_PRESET properties is not high. I've counted that adding this flag increases our llvm binary by 13 relocations. Frankly I'm not sure where those are even coming from. It would be preferable to use hidden visibility, but that breaks liblld. This can be solved by setting LLDB_EXPORT_ALL_SYMBOLS. After that some ORC tests fail which do symbolic lookup in the tests. It seems that setting CMAKE_CXX_VISIBILITY_PRESET=hidden will not be worth the maintenance burden. Setting it to default works to unblock using relative vtables, so we can just go with that.
2023-09-21[CMake] Fully delete the deprecated LLVM_USE_CRT* (#66850)Zhang3-6/+0
This has been deprecated in favor of CMake's CMAKE_MSVC_RUNTIME_LIBRARY in c6bd873403a8ac6538a3fe3b3c2fe39c16b146a6 . Current release branch still contains it in deprecated status so no existing end-users will be affected.
2023-09-11[Fuchsia] Support building runtimes for RISC-V on Linux (#66025)Petr Hosek1-1/+1
We support RISC-V on Linux as the host platform for Fuchsia.
2023-09-11[Fuchsia] Re-enable libcxx timezone database (#65981)Alex Brachet1-3/+0
2023-09-10[Fuchsia] Disable libcxx timezone database (#65870)Alex Brachet1-0/+3
tzdb is currently broken when cross compiling from non Linux to Linux. Lets just disable it totally in our toolchain for now. We should remove this when #65859 lands.
2023-09-05[CMake] Add option to disable driver build in Fuchsia cache fileAlex Brachet1-1/+4
Linking the driver binary can take a long time, particularly with debug info. This adds an option to disable the driver build meant for local use. Differential Revision: https://reviews.llvm.org/D159130
2023-08-29[Clang][CMake] Remove GCC option override in BOLT.cmakeAmir Aupov1-6/+0
2023-08-25[CMake] Allow enabling Python in Fuchsia LLDBDaniel Thornburgh2-2/+14
2023-08-11Revert part of "[test][asan] Disable new test from D157552 on Android"Vitaly Buka1-1/+0
Undo unrelated edit. This reverts commit 6b7b45c213d44cb49708e22fb31df524298495d2.
2023-08-09[test][asan] Disable new test from D157552 on AndroidVitaly Buka1-0/+1
2023-07-26Revert "[CMake] Include riscv32-unknown-elf runtimes in Fuchsia toolchain"Petr Hosek1-35/+1
This reverts commit 28f5322770a13cd2cd796d0936d3db1a454e620b.
2023-07-26[CMake] Include riscv32-unknown-elf runtimes in Fuchsia toolchainPetr Hosek1-1/+35
This contains compiler-rt builtins and llvm-libc for baremetal use. Differential Revision: https://reviews.llvm.org/D155337
2023-06-28[Fuchsia] Enable libcxx filesystem on Windows for stage 1 buildPetr Hosek1-1/+0
This is a follow up to D153931 but for the first stage.
2023-06-27[Fuchsia] Enable libcxx filesystem on Windows build.Haowei Wu1-1/+0
This patch enables the libcxx filesystem when building runtimes for Windows. Differential Revision: https://reviews.llvm.org/D153931
2023-06-26[CMake][Fuchsia] Enable standalone libatomicAlex Brachet1-0/+2
BUILTINS_${target}_COMPILER_RT_BUILD_STANDALONE_LIBATOMIC actually builds libatomic, and RUNTIMES_${target}_COMPILER_RT_BUILD_STANDALONE_LIBATOMIC tells the compiler-rt tests that we built it and it is safe to use in tests. Differential Revision: https://reviews.llvm.org/D151681
2023-06-16[Fuchsia] Forward libedit flags to stage2Daniel Thornburgh1-0/+2
2023-06-16[Fuchsia] Forward terminfo flags to stage 2Daniel Thornburgh1-0/+2
2023-06-12[Fuchsia] Pass CursesAndPanel_ROOT through to stage2Daniel Thornburgh1-0/+1
2023-06-06[Fuchsia] Add llvm-strings to Fuchsia clang build.Haowei Wu1-0/+1
This patch adds 'llvm-strings' to Fuchsia clang build. Differential Revision: https://reviews.llvm.org/D152318
2023-06-03[CMake][Fuchsia] Add LLVM_ENABLE_HTTPLIB to Stage 2 buildAiden Grossman1-0/+1
This patch sets the LLVM_ENABLE_HTTPLIB flag to ON in the stage 2 build similar to how many of the other dependency flags are already specified. This is necessary to configure the stage 2 build by itself, otherwise the CMake configuration crashes. This is currently causing the MLGO demo to fail since we're only using stage 2 to avoid having to build stage 1 to save some compile time. Reviewed By: phosek Differential Revision: https://reviews.llvm.org/D152057
2023-06-01[Fuchsia] Reland: Add llvm-debuginfod to toolchainDaniel Thornburgh2-0/+3
2023-06-01Revert "[Fuchsia] Add llvm-debuginfod to toolchain"Haowei Wu1-1/+0
This reverts commit 731f9ac6e53611dabb51c52bfc8011c2aab7790b.
2023-06-01[BOLT][CMake] Redo the build and install targetsPetr Hosek1-1/+2
The existing BOLT install targets are broken on Windows becase they don't properly handle the output extension. We cannot use the existing LLVM macros since those make assumptions that don't hold for BOLT. This change instead implements custom macros following the approach used by Clang and LLD. Differential Revision: https://reviews.llvm.org/D151595
2023-06-01Revert "[BOLT][CMake] Redo the build and install targets"Petr Hosek1-2/+1
This reverts commit f99a7d3e38095cfdaf7e729289a8894dd31c7efa since it broke the bolt-aarch64-ubuntu-clang-shared bot.
2023-06-01Revert "[Fuchsia] Pass through LLVM_ENABLE_HTTPLIB to stage 2"Petr Hosek1-1/+0
This reverts commit 80614e162222e857d8767174284701aec69381c4.
2023-06-01[BOLT][CMake] Redo the build and install targetsPetr Hosek1-1/+2
The existing BOLT install targets are broken on Windows becase they don't properly handle the output extension. We cannot use the existing LLVM macros since those make assumptions that don't hold for BOLT. This change instead implements custom macros following the approach used by Clang and LLD. Differential Revision: https://reviews.llvm.org/D151595
2023-05-31[Fuchsia] Pass through LLVM_ENABLE_HTTPLIB to stage 2Daniel Thornburgh1-0/+1
2023-05-31[Fuchsia] Add llvm-debuginfod to toolchainDaniel Thornburgh1-0/+1
2023-05-30[CMake] Remove BOLT from Fuchsia toolchainPetr Hosek1-2/+1
Fuchsia toolchain is currently broken due to https://reviews.llvm.org/D151595. While we wait for it to be resolved, remove BOLT to unbreak the Fuchsia toolchain build. Differential Revision: https://reviews.llvm.org/D150939
2023-05-19[BOLT][CMake] Use correct output paths and passthrough necessary optionsPetr Hosek1-1/+1
This addresses https://github.com/llvm/llvm-project/issues/62748. Differential Revision: https://reviews.llvm.org/D150752