Auto merge of #117947 - Dirbaio:drop-llvm-15, r=cuviper
Update the minimum external LLVM to 16. With this change, we'll have stable support for LLVM 16 and 17. For reference, the previous increase to LLVM 15 was #114148 [Relevant zulip discussion](https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/topic/riscv.20forced-atomics)
This commit is contained in:
commit
49b3924bd4
65 changed files with 42 additions and 251 deletions
|
@ -134,18 +134,6 @@ pub unsafe fn create_module<'ll>(
|
|||
|
||||
let mut target_data_layout = sess.target.data_layout.to_string();
|
||||
let llvm_version = llvm_util::get_version();
|
||||
if llvm_version < (16, 0, 0) {
|
||||
if sess.target.arch == "s390x" {
|
||||
// LLVM 16 data layout changed to always set 64-bit vector alignment,
|
||||
// which is conditional in earlier LLVM versions.
|
||||
// https://reviews.llvm.org/D131158 for the discussion.
|
||||
target_data_layout = target_data_layout.replace("-v128:64", "");
|
||||
} else if sess.target.arch == "riscv64" {
|
||||
// LLVM 16 introduced this change so as to produce more efficient code.
|
||||
// See https://reviews.llvm.org/D116735 for the discussion.
|
||||
target_data_layout = target_data_layout.replace("-n32:64-", "-n64-");
|
||||
}
|
||||
}
|
||||
if llvm_version < (17, 0, 0) {
|
||||
if sess.target.arch.starts_with("powerpc") {
|
||||
// LLVM 17 specifies function pointer alignment for ppc:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue