LLVM 16.0.1 Release

LLVM 16.0.1 is now available. This release is a bug-fix release and is API and ABI compatible with 16.0.0.

Release sources and binaries can be found on the release page .

If you have any questions about this release, you can as them here .

Below is the full list of changes since 16.0.0:

cd89023f7979 [SPARC] Attempt to fix bug introduced by D142458
c57b104e95c1 [SPARC] Implement hooks for conditional branch relaxation
c3591d714b49 [Local] Handle size mismatch between pointer/int in copyRangeMetadata()
dae44c8ccc84 [clang-format] Don’t annotate left brace of struct as FunctionLBrace
86b0c6e40502 [SelectionDAG] Correctly reduce BV to shuffle with zero on big endian
b27338656d7d [llvm-rc] Fix the reference to the option for disabling preprocessing in a message
b9857e6711a2 [llvm-rc] Look for “clang-” when locating a suitable preprocessor
35551022bf04 [llvm-rc] Respect the executable specified in the --preprocessor command
1fa1bc9c2dff [libc++] Don’t try to provide source_location on AppleClang 1403
555e0e732d48 [RISCV] Support emulated TLS
356cb7e0d016 [clang-format] Add MinDigits suboptions to IntegerLiteralSeparator
6bf663061947 [clang-format] Don’t format already formatted integer literals
7b133944eb89 [RISCV] Allow llvm-objdump to disassemble objects with unrecognised versions of known extensions
110b4fd2d9cf Revert “[dsymutil] dsymutil produces broken lines info (probably) with LTO on mac”
1e33c7482b45 [clang][MinGW] Add asan DLL lib before other libs and objects
e59e0b9bd374 ARMFrameLowering.cpp - fix MSVC “result of 32-bit shift implicitly converted to 64 bits” warning. NFC.
79e743f16cd9 [ARM] Handle generating SEH unwind info for t2STR_PRE/t2LDR_POST
c163d43e2207 [libc++] Mark a test relying on typeid as unsupported without RTTI.
9ec8096d0d50 [release/16.x][libc++] Revert the bitset sort optimization
34e907fdba13 [libc++] Fix CI on release/16.x
e16f668f5ed0 [clang-format] Handle ‘_’ in ud-suffix for IntegerLiteralSeparator
42d1b276f779 Bump version to 16.0.1
ebafcb86c35c [CMake] Respect variables for specifying host tools even without LLVM_USE_HOST_TOOLS set
8de1b29840b5 [llvm-objdump] Fix help message for --print-imm-hex
1ca4b5cfaa70 [sanitizer][win] Change cmdline check to allow double backslashs
973cea755440 [BOLT] Search section based on relocation symbol
140c68db4fe4 [libc++] Avoid ODR violations in __exception_guard
a18482ac5089 [BOLT][AArch64] Replace NOP with adrp in AdrRelaxationPass to preserve relative offsets.
c2ef3257df81 [BOLT][NFC] Remove C-style out of bounds array ref
1c1ab11d6e1e [RISCV][MC] Adjust conditions to emit R_RISCV_ADD*/R_RISCV_SUB* pairs
34194d85544f [test] Add some interesting cases to MC/RISCV/riscv64-64b-pcrel.s
ee1493c713d6 [test] Improve MC/RISCV/riscv64-64b-pcrel.s to demonstrate regression due to D132262
4f243f137859 [test] Improve MC/RISCV/riscv64-64b-pcrel.s
1f9ea2d3f045 [X86] AMD Genoa (znver4) Scheduler model update
0b4106274631 [BOLT] Reject symbols pointing to section end
14ed120b2307 No longer issue static lambda pedantic warning for pre-c++2b compat
32b8cc7031f0 [BOLT] Fix data reoder for aarch64
867c59c2da17 [Coroutines] Pass size parameter for deallocation function when qualified
6dc69d034845 [libc++][ranges] Fix incorrect integer typedef in elements_view test.
99af55f91f5d [libc++][format] Fix a missing include in tests.
8a80823218a8 [libunwind][PowerPC] Fix saving/restoring VSX registers on LE systems
c5b23ab2a31a JITLink: Add missing EHFrame NULL terminator on aarch64/ELF
2352a1b1e917 Reapply [lld][flang] Add exceptions for Flang runtime libraries on MinGW.
37ea87b88d07 No longer issue pedantic warning about pre-c++2b compat
a70565f7de2e [libunwind][Modules] Add unwind_arm_ehabi.h and unwind_itanium.h to the unwind module)
56edf062bdb6 [dsymutil] dsymutil produces broken lines info (probably) with LTO on mac
bec9a607690b [compiler-rt] Add missing #else clause to fix the build on NetBSD.
3c0850337bd8 [X86] Fix encoding for ATOMIC_LOGIC_OP
ba22382d514b [X86] Add negative test for D145930
2861fa247395 [Driver][FreeBSD] Simplify ARM handling
1172ed57d823 [analyzer] Fix crashing getSValFromInitListExpr for nested initlists
830229ee918d [WebAssembly] Add auto-upgrade for renamed intrinsics
b5f9ea64b207 [X86] Support load/store for bf16 in avx
bb6a97c15aa2 [AArch64] fix bug #55005 handle DW_CFA_GNU_NegateRAState
aef3508f89c4 [flang] Fixed uninitialized std::unique_ptr dereference.
fbf716ffe163 [flang] Fixed restrictions checking for OpenACC loop-associated constructs.
2ecbe73ceeda [flang] Fix dereference of std::optional with no value
0e227de08e32 [LLDB][ObjectFileELF] Correct the return type of Reloc{Offset,Addend}32
7d28293f17fa [LLDB][ObjectFileELF] Correct the return type of RelocOffset64 and RelocAddend64
6d3b7679ef21 [LLDB][ObjectFileELF] Support LoongArch64 in ApplyReloctions
a824efcd0158 [BPF] Improve pruning to avoid generate more types in BTF
ab86d147e852 [libunwind][AArch64] Unbreak building with GNU assembler
526102b37e59 [InstCombine] Canonicalize icmp eq pow2 more thoroughly
7049d5895700 [InstCombine] Add additional test for icmp eq/ne with bool load (NFC)
b3ea3484c063 [Pipelines] Restore old DAE position in LTO pipeline
72cb90bd7b62 [PhaseOrdering] Add test for DAE/GlobalDCE interaction (NFC)