Skip to content

Commit 4a04d08

Browse files
committed
Auto merge of #107224 - nikic:llvm-16, r=cuviper
Upgrade to LLVM 16 This updates Rust to LLVM 16. It also updates our host compiler for dist-x86_64-linux to LLVM 16. The reason for that is that Bolt from LLVM 15 is not capable of compiling LLVM 16 (llvm/llvm-project#61114). LLVM 16.0.0 has been [released](https://discourse.llvm.org/t/llvm-16-0-0-release/69326) on March 18, while Rust 1.70 will become stable on June 1. Tested images: `dist-x86_64-linux`, `dist-riscv64-linux` (alt), `dist-x86_64-illumos`, `dist-various-1`, `dist-various-2`, `dist-powerpc-linux`, `wasm32`, `armhf-gnu` Tested images until the usual IPv6 failures: `test-various`
2 parents 2d0a7de + b238a76 commit 4a04d08

File tree

4 files changed

+10
-9
lines changed

4 files changed

+10
-9
lines changed

.gitmodules

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
[submodule "src/llvm-project"]
2626
path = src/llvm-project
2727
url = https://github.com/rust-lang/llvm-project.git
28-
branch = rustc/15.0-2022-12-07
28+
branch = rustc/16.0-2023-03-06
2929
[submodule "src/doc/embedded-book"]
3030
path = src/doc/embedded-book
3131
url = https://github.com/rust-embedded/book.git

src/bootstrap/config.rs

+5-4
Original file line numberDiff line numberDiff line change
@@ -1153,6 +1153,11 @@ impl Config {
11531153
config.rust_profile_generate = flags.rust_profile_generate;
11541154
}
11551155

1156+
// rust_info must be set before is_ci_llvm_available() is called.
1157+
let default = config.channel == "dev";
1158+
config.ignore_git = ignore_git.unwrap_or(default);
1159+
config.rust_info = GitInfo::new(config.ignore_git, &config.src);
1160+
11561161
if let Some(llvm) = toml.llvm {
11571162
match llvm.ccache {
11581163
Some(StringOrBool::String(ref s)) => config.ccache = Some(s.to_string()),
@@ -1346,10 +1351,6 @@ impl Config {
13461351
config.rust_debuginfo_level_tools = with_defaults(debuginfo_level_tools);
13471352
config.rust_debuginfo_level_tests = debuginfo_level_tests.unwrap_or(0);
13481353

1349-
let default = config.channel == "dev";
1350-
config.ignore_git = ignore_git.unwrap_or(default);
1351-
config.rust_info = GitInfo::new(config.ignore_git, &config.src);
1352-
13531354
let download_rustc = config.download_rustc_commit.is_some();
13541355
// See https://github.com/rust-lang/compiler-team/issues/326
13551356
config.stage = match config.cmd {

src/llvm-project

tests/codegen/array-map.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,10 @@ pub fn short_integer_zip_map(x: [u32; 8], y: [u32; 8]) -> [u32; 8] {
3838
//
3939
// CHECK-LABEL: @long_integer_map
4040
#[no_mangle]
41-
pub fn long_integer_map(x: [u32; 64]) -> [u32; 64] {
41+
pub fn long_integer_map(x: [u32; 512]) -> [u32; 512] {
4242
// CHECK: start:
43-
// CHECK-NEXT: alloca [64 x i32]
44-
// CHECK-NEXT: alloca %"core::mem::manually_drop::ManuallyDrop<[u32; 64]>"
43+
// CHECK-NEXT: alloca [512 x i32]
44+
// CHECK-NEXT: alloca %"core::mem::manually_drop::ManuallyDrop<[u32; 512]>"
4545
// CHECK-NOT: alloca
4646
// CHECK: mul <{{[0-9]+}} x i32>
4747
// CHECK: add <{{[0-9]+}} x i32>

0 commit comments

Comments
 (0)