build-llvm.sh: Bump to llvmorg-13.0.0-rc1

Notable changes since 12.0.0 for llvm-mingw are:

llvm:
- Produce proper cross-section relative relocations on ARM and AArch64
- Fixed the calling convention for AArch64 for variadic functions involving
  floats in the fixed arguments
- Added a windres compatible frontend in llvm-rc, avoiding the need for
  external wrappers
- Build LLVM with -ffunction-sections and --gc-sections, shrinking
  a full build of llvm-mingw without LLVM_BUILD_LLVM_DYLIB by 22%
  (but llvm-mingw uses LLVM_BUILD_LLVM_DYLIB these days, which shrinks
  the build even more)
- Avoid optimizing/changing function calls into stpcpy due to optimizations
- llvm-ml has improved to the point where it can build the OpenMP assembly
  file without needing to use another assembler tool

lld:
- Support linking directly against DLLs without using import libraries
- Improved reliability when running on Windows, avoiding some hangs
  when terminating
- Fixed linking with --export-all-symbols in combination with
  -ffunction-sections
- Fixed --export-all-symbols when linking EXEs
- Fixed autoexport from LTO objects with comdat symbols
- Print warnings with a "ld.lld" prefix instead of "lld-link"
- Avoid thread exhaustion on 32 bit Windows
- Accepting more forms of options, like -static and --stack=

clang:
- Fixed reading long doubles with va_arg on x86_64
- Fixed calling std::once in a dynamically linked libstdc++

runtimes:
- Complete support for std::filesystem in libc++ (which was previously
  backported to 12.0.0 in llvm-mingw too, but the previous release had
  a bug in using e.g. the u8path() method when linking against the DLL
  version of libc++)
- Implemented semaphores in libc++
- Provide the __gcc_personality_seh0 symbol, fixing building C code with
  -fexceptions and __attribute__((cleanup))
- Simplified building/installing compiler-rt and libunwind
- Silenced lots of build warnings in OpenMP
This commit is contained in:
Martin Storsjö committed 2021-08-09 12:08:13 +03:00
1 parent 1f5a7e0577
commit 9188cce153
28 files changed
+1 -2966

No files matched your search

+1 -6
View File
@@ -16,7 +16,7 @@
set -e
: ${LLVM_VERSION:=llvmorg-12.0.0}
: ${LLVM_VERSION:=llvmorg-13.0.0-rc1}
ASSERTS=OFF
unset HOST
BUILDDIR="build"
@@ -89,11 +89,6 @@ if [ -n "$SYNC" ] || [ -n "$CHECKOUT" ]; then
git fetch --depth 1 origin "$LLVM_VERSION"
git checkout FETCH_HEAD
fi
if [ "$LLVM_VERSION" = "llvmorg-12.0.0" ]; then
# The bundled patches for std::filesystem apply on the 12.0.0 release,
# but don't try to apply them if a different version was requested.
git am -3 --keep-non-patch ../patches/llvm-project/*.patch
fi
cd ..
fi