From e06702461ffd5d4504b81538499f0e42884c817d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Storsj=C3=B6?= Date: Sat, 28 Jan 2023 16:22:36 +0200 Subject: [PATCH] build-llvm: Update to llvm 16.0.0 RC1 Notable changes are: - Emit -exclude-symbols: directives for hidden symbol visibility (supported by LLD 15 and binutils ld 2.40). This allows reducing the number of exported symbols in e.g. libLLVM-*.dll. - Support for CFGuard on mingw, thanks to Alvin Wong! - LLD now picks up libraries named .lib when linking with -l, even if -static was specified - Fixed SEH unwind info on AArch64 if using the AArch64 feature PAC (Pointer Authentication Code) - previously, unwinding would fail if running on a system that actually does use the feature. (The consistency of AArch64 SEH unwind info was also improved for other cases.) - Fixed stack alignment on AArch64, for stack frames large enough to require stack probing - Fixed llvm-objcopy corrupting some cases of object files with empty sections - Improvements to LLDB, where it now uses the regular symbol list of DLLs (including non-exported symbols) - OpenMP now can be built and works on armv7 and aarch64 (in mingw configurations) Notable for simplifying how to cross compile LLVM itself: - The preexisting build machine tools can be specified with one single option LLVM_NATIVE_TOOL_DIR instead of passing a number of variables like LLVM_TABLEGEN, CLANG_TABLEGEN etc. --- build-llvm.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-llvm.sh b/build-llvm.sh index fcf83b8..ee9e3f2 100755 --- a/build-llvm.sh +++ b/build-llvm.sh @@ -16,7 +16,7 @@ set -e -: ${LLVM_VERSION:=llvmorg-15.0.0} +: ${LLVM_VERSION:=llvmorg-16.0.0-rc1} ASSERTS=OFF unset HOST BUILDDIR="build"