Merge commit '6d355f6844323db03bfd608899613e363e701951' into sync_cg_clif-2023-12-31

This commit is contained in:
bjorn3 2023-12-31 13:29:53 +00:00
commit d1d134e464
6 changed files with 22 additions and 20 deletions

View File

@ -175,14 +175,10 @@ jobs:
path: build/cg_clif
key: ${{ runner.os }}-x86_64-unknown-linux-gnu-cargo-build-target-${{ hashFiles('rust-toolchain', '**/Cargo.lock') }}
- name: Cache cargo bin dir
uses: actions/cache@v3
with:
path: ~/.cargo/bin
key: ${{ runner.os }}-${{ matrix.env.TARGET_TRIPLE }}-cargo-bin-dir-${{ hashFiles('rust-toolchain', '**/Cargo.lock') }}
- name: Install hyperfine
run: cargo install hyperfine || true
run: |
sudo apt update
sudo apt install -y hyperfine
- name: Prepare dependencies
run: ./y.sh prepare
@ -257,14 +253,14 @@ jobs:
- name: Upload prebuilt cg_clif
if: matrix.os == 'windows-latest' || matrix.env.TARGET_TRIPLE != 'x86_64-pc-windows-gnu'
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: cg_clif-${{ matrix.env.TARGET_TRIPLE }}
path: cg_clif.tar.xz
- name: Upload prebuilt cg_clif (cross compile)
if: matrix.os != 'windows-latest' && matrix.env.TARGET_TRIPLE == 'x86_64-pc-windows-gnu'
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: cg_clif-${{ runner.os }}-cross-x86_64-mingw
path: cg_clif.tar.xz
@ -283,7 +279,7 @@ jobs:
- uses: actions/checkout@v3
- name: Download all built artifacts
uses: actions/download-artifact@v3
uses: actions/download-artifact@v4
with:
path: artifacts/

View File

@ -43,6 +43,11 @@ jobs:
path: build/cg_clif
key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('rust-toolchain', '**/Cargo.lock') }}
- name: Install ripgrep
run: |
sudo apt update
sudo apt install -y ripgrep
- name: Prepare dependencies
run: ./y.sh prepare

View File

@ -1,3 +1,3 @@
[toolchain]
channel = "nightly-2023-12-24"
channel = "nightly-2023-12-31"
components = ["rust-src", "rustc-dev", "llvm-tools"]

View File

@ -1,7 +1,7 @@
#!/usr/bin/env bash
set -e
# CG_CLIF_FORCE_GNU_AS will force usage of as instead of the LLVM backend of rustc as we
# CG_CLIF_FORCE_GNU_AS will force usage of as instead of the LLVM backend of rustc as
# the LLVM backend isn't compiled in here.
export CG_CLIF_FORCE_GNU_AS=1
@ -11,20 +11,19 @@ export CG_CLIF_FORCE_GNU_AS=1
CG_CLIF_STDLIB_REMAP_PATH_PREFIX=/rustc/FAKE_PREFIX ./y.sh build
echo "[SETUP] Rust fork"
git clone https://github.com/rust-lang/rust.git --filter=tree:0 || true
git clone --quiet https://github.com/rust-lang/rust.git --filter=tree:0 || true
pushd rust
git fetch
git checkout -- .
git checkout "$(rustc -V | cut -d' ' -f3 | tr -d '(')"
git checkout --no-progress -- .
git checkout --no-progress "$(rustc -V | cut -d' ' -f3 | tr -d '(')"
git submodule update --quiet --init src/tools/cargo library/backtrace library/stdarch
git -c user.name=Dummy -c user.email=dummy@example.com -c commit.gpgSign=false \
am ../patches/*-stdlib-*.patch
cat > config.toml <<EOF
change-id = 115898
[llvm]
ninja = false
change-id = 999999
[build]
rustc = "$(pwd)/../dist/bin/rustc-clif"

View File

@ -321,7 +321,7 @@ fn dep_symbol_lookup_fn(
Linkage::NotLinked | Linkage::IncludedFromDylib => {}
Linkage::Static => {
let name = crate_info.crate_name[&cnum];
let mut err = sess.struct_err(format!("Can't load static lib {}", name));
let mut err = sess.dcx().struct_err(format!("Can't load static lib {}", name));
err.note("rustc_codegen_cranelift can only load dylibs in JIT mode.");
err.emit();
}

View File

@ -154,6 +154,8 @@ pub(crate) fn compile_global_asm(
}
} else {
let mut child = Command::new(std::env::current_exe().unwrap())
// Avoid a warning about the jobserver fd not being passed
.env_remove("CARGO_MAKEFLAGS")
.arg("--target")
.arg(&config.target)
.arg("--crate-type")