Merge commit 'fbda869b4e
' into sync_cg_clif-2024-04-05
This commit is contained in:
commit
6cf6fd38ec
16 changed files with 85 additions and 121 deletions
|
@ -1,9 +1,10 @@
|
|||
use std::env;
|
||||
use std::path::PathBuf;
|
||||
|
||||
use crate::path::{Dirs, RelPath};
|
||||
use crate::rustc_info::get_file_name;
|
||||
use crate::shared_utils::{rustflags_from_env, rustflags_to_cmd_env};
|
||||
use crate::utils::{is_ci, is_ci_opt, maybe_incremental, CargoProject, Compiler, LogGroup};
|
||||
use crate::utils::{CargoProject, Compiler, LogGroup};
|
||||
|
||||
pub(crate) static CG_CLIF: CargoProject = CargoProject::new(&RelPath::SOURCE, "cg_clif");
|
||||
|
||||
|
@ -16,20 +17,15 @@ pub(crate) fn build_backend(
|
|||
let _group = LogGroup::guard("Build backend");
|
||||
|
||||
let mut cmd = CG_CLIF.build(&bootstrap_host_compiler, dirs);
|
||||
maybe_incremental(&mut cmd);
|
||||
|
||||
let mut rustflags = rustflags_from_env("RUSTFLAGS");
|
||||
|
||||
rustflags.push("-Zallow-features=rustc_private".to_owned());
|
||||
|
||||
if is_ci() {
|
||||
// Deny warnings on CI
|
||||
rustflags.push("-Dwarnings".to_owned());
|
||||
|
||||
if !is_ci_opt() {
|
||||
cmd.env("CARGO_PROFILE_RELEASE_DEBUG_ASSERTIONS", "true");
|
||||
cmd.env("CARGO_PROFILE_RELEASE_OVERFLOW_CHECKS", "true");
|
||||
}
|
||||
if env::var("CG_CLIF_EXPENSIVE_CHECKS").is_ok() {
|
||||
// Enabling debug assertions implicitly enables the clif ir verifier
|
||||
cmd.env("CARGO_PROFILE_RELEASE_DEBUG_ASSERTIONS", "true");
|
||||
cmd.env("CARGO_PROFILE_RELEASE_OVERFLOW_CHECKS", "true");
|
||||
}
|
||||
|
||||
if use_unstable_features {
|
||||
|
|
|
@ -6,8 +6,7 @@ use std::process::Command;
|
|||
use crate::path::{Dirs, RelPath};
|
||||
use crate::rustc_info::get_file_name;
|
||||
use crate::utils::{
|
||||
maybe_incremental, remove_dir_if_exists, spawn_and_wait, try_hard_link, CargoProject, Compiler,
|
||||
LogGroup,
|
||||
remove_dir_if_exists, spawn_and_wait, try_hard_link, CargoProject, Compiler, LogGroup,
|
||||
};
|
||||
use crate::{config, CodegenBackend, SysrootKind};
|
||||
|
||||
|
@ -270,7 +269,6 @@ fn build_clif_sysroot_for_triple(
|
|||
}
|
||||
compiler.rustflags.extend(rustflags);
|
||||
let mut build_cmd = STANDARD_LIBRARY.build(&compiler, dirs);
|
||||
maybe_incremental(&mut build_cmd);
|
||||
if channel == "release" {
|
||||
build_cmd.arg("--release");
|
||||
}
|
||||
|
|
|
@ -6,7 +6,7 @@ use std::env;
|
|||
use std::path::PathBuf;
|
||||
use std::process;
|
||||
|
||||
use self::utils::{is_ci, is_ci_opt, Compiler};
|
||||
use self::utils::Compiler;
|
||||
|
||||
mod abi_cafe;
|
||||
mod bench;
|
||||
|
@ -60,14 +60,9 @@ fn main() {
|
|||
}
|
||||
env::set_var("CG_CLIF_DISABLE_INCR_CACHE", "1");
|
||||
|
||||
if is_ci() {
|
||||
// Disabling incr comp reduces cache size and incr comp doesn't save as much on CI anyway
|
||||
env::set_var("CARGO_BUILD_INCREMENTAL", "false");
|
||||
|
||||
if !is_ci_opt() {
|
||||
// Enable the Cranelift verifier
|
||||
env::set_var("CG_CLIF_ENABLE_VERIFIER", "1");
|
||||
}
|
||||
// Force incr comp even in release mode unless in CI or incremental builds are explicitly disabled
|
||||
if env::var_os("CARGO_BUILD_INCREMENTAL").is_none() {
|
||||
env::set_var("CARGO_BUILD_INCREMENTAL", "true");
|
||||
}
|
||||
|
||||
let mut args = env::args().skip(1);
|
||||
|
|
|
@ -15,7 +15,6 @@ pub(crate) fn prepare(dirs: &Dirs) {
|
|||
RelPath::DOWNLOAD.ensure_exists(dirs);
|
||||
crate::tests::RAND_REPO.fetch(dirs);
|
||||
crate::tests::REGEX_REPO.fetch(dirs);
|
||||
crate::tests::PORTABLE_SIMD_REPO.fetch(dirs);
|
||||
}
|
||||
|
||||
pub(crate) fn prepare_stdlib(dirs: &Dirs, rustc: &Path) {
|
||||
|
|
|
@ -130,16 +130,10 @@ pub(crate) static REGEX_REPO: GitRepo = GitRepo::github(
|
|||
|
||||
pub(crate) static REGEX: CargoProject = CargoProject::new(®EX_REPO.source_dir(), "regex_target");
|
||||
|
||||
pub(crate) static PORTABLE_SIMD_REPO: GitRepo = GitRepo::github(
|
||||
"rust-lang",
|
||||
"portable-simd",
|
||||
"5794c837bc605c4cd9dbb884285976dfdb293cce",
|
||||
"a64d8fdd0ed0d9c4",
|
||||
"portable-simd",
|
||||
);
|
||||
pub(crate) static PORTABLE_SIMD_SRC: RelPath = RelPath::BUILD.join("coretests");
|
||||
|
||||
pub(crate) static PORTABLE_SIMD: CargoProject =
|
||||
CargoProject::new(&PORTABLE_SIMD_REPO.source_dir(), "portable-simd_target");
|
||||
CargoProject::new(&PORTABLE_SIMD_SRC, "portable-simd_target");
|
||||
|
||||
static LIBCORE_TESTS_SRC: RelPath = RelPath::BUILD.join("coretests");
|
||||
|
||||
|
@ -221,7 +215,12 @@ const EXTENDED_SYSROOT_SUITE: &[TestCase] = &[
|
|||
}
|
||||
}),
|
||||
TestCase::custom("test.portable-simd", &|runner| {
|
||||
PORTABLE_SIMD_REPO.patch(&runner.dirs);
|
||||
apply_patches(
|
||||
&runner.dirs,
|
||||
"portable-simd",
|
||||
&runner.stdlib_source.join("library/portable-simd"),
|
||||
&PORTABLE_SIMD_SRC.to_path(&runner.dirs),
|
||||
);
|
||||
|
||||
PORTABLE_SIMD.clean(&runner.dirs);
|
||||
|
||||
|
|
|
@ -254,14 +254,6 @@ pub(crate) fn copy_dir_recursively(from: &Path, to: &Path) {
|
|||
}
|
||||
}
|
||||
|
||||
pub(crate) fn is_ci() -> bool {
|
||||
env::var("CI").is_ok()
|
||||
}
|
||||
|
||||
pub(crate) fn is_ci_opt() -> bool {
|
||||
env::var("CI_OPT").is_ok()
|
||||
}
|
||||
|
||||
static IN_GROUP: AtomicBool = AtomicBool::new(false);
|
||||
pub(crate) struct LogGroup {
|
||||
is_gha: bool,
|
||||
|
@ -288,13 +280,3 @@ impl Drop for LogGroup {
|
|||
IN_GROUP.store(false, Ordering::SeqCst);
|
||||
}
|
||||
}
|
||||
|
||||
pub(crate) fn maybe_incremental(cmd: &mut Command) {
|
||||
if is_ci() || std::env::var("CARGO_BUILD_INCREMENTAL").map_or(false, |val| val == "false") {
|
||||
// Disabling incr comp reduces cache size and incr comp doesn't save as much on CI anyway
|
||||
cmd.env("CARGO_BUILD_INCREMENTAL", "false");
|
||||
} else {
|
||||
// Force incr comp even in release mode unless in CI or incremental builds are explicitly disabled
|
||||
cmd.env("CARGO_BUILD_INCREMENTAL", "true");
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue