diff --git a/cranelift/codegen/build.rs b/cranelift/codegen/build.rs index dd6cfc999c..10def102be 100644 --- a/cranelift/codegen/build.rs +++ b/cranelift/codegen/build.rs @@ -27,15 +27,6 @@ fn main() { let out_dir = env::var("OUT_DIR").expect("The OUT_DIR environment variable must be set"); let target_triple = env::var("TARGET").expect("The TARGET environment variable must be set"); - let new_backend_isas = if env::var("CARGO_FEATURE_X64").is_ok() { - // The x64 (new backend for x86_64) is a bit particular: it only requires generating - // the shared meta code; the only ISA-specific code is for settings. - vec![meta::isa::Isa::X86] - } else { - Vec::new() - }; - - // Configure isa targets using the old backend. let isa_targets = meta::isa::Isa::all() .iter() .cloned() @@ -45,7 +36,7 @@ fn main() { }) .collect::>(); - let old_backend_isas = if new_backend_isas.is_empty() && isa_targets.is_empty() { + let isas = if isa_targets.is_empty() { // Try to match native target. let target_name = target_triple.split('-').next().unwrap(); let isa = meta::isa_from_arch(&target_name).expect("error when identifying target"); @@ -65,23 +56,14 @@ fn main() { crate_dir.join("build.rs").to_str().unwrap() ); - if let Err(err) = meta::generate(&old_backend_isas, &new_backend_isas, &out_dir) { + if let Err(err) = meta::generate(&isas, &out_dir) { eprintln!("Error: {}", err); process::exit(1); } if env::var("CRANELIFT_VERBOSE").is_ok() { - for isa in &old_backend_isas { - println!( - "cargo:warning=Includes old-backend support for {} ISA", - isa.to_string() - ); - } - for isa in &new_backend_isas { - println!( - "cargo:warning=Includes new-backend support for {} ISA", - isa.to_string() - ); + for isa in &isas { + println!("cargo:warning=Includes support for {} ISA", isa.to_string()); } println!( "cargo:warning=Build step took {:?}.", diff --git a/cranelift/codegen/meta/src/isa/x86.rs b/cranelift/codegen/meta/src/isa/x86.rs index 2a63ef147d..eec6ac105f 100644 --- a/cranelift/codegen/meta/src/isa/x86.rs +++ b/cranelift/codegen/meta/src/isa/x86.rs @@ -9,7 +9,7 @@ pub(crate) fn define(shared_defs: &mut SharedDefinitions) -> TargetIsa { TargetIsa::new("x86", settings) } -pub(crate) fn define_settings(shared: &SettingGroup) -> SettingGroup { +fn define_settings(shared: &SettingGroup) -> SettingGroup { let mut settings = SettingGroupBuilder::new("x86"); // CPUID.01H:ECX diff --git a/cranelift/codegen/meta/src/lib.rs b/cranelift/codegen/meta/src/lib.rs index d54e490f6c..20815ef8d2 100644 --- a/cranelift/codegen/meta/src/lib.rs +++ b/cranelift/codegen/meta/src/lib.rs @@ -21,11 +21,7 @@ pub fn isa_from_arch(arch: &str) -> Result { } /// Generates all the Rust source files used in Cranelift from the meta-language. -pub fn generate( - old_backend_isas: &[isa::Isa], - new_backend_isas: &[isa::Isa], - out_dir: &str, -) -> Result<(), error::Error> { +pub fn generate(isas: &[isa::Isa], out_dir: &str) -> Result<(), error::Error> { // Create all the definitions: // - common definitions. let mut shared_defs = shared::define(); @@ -39,7 +35,7 @@ pub fn generate( gen_types::generate("types.rs", &out_dir)?; // - per ISA definitions. - let target_isas = isa::define(old_backend_isas, &mut shared_defs); + let target_isas = isa::define(isas, &mut shared_defs); // At this point, all definitions are done. let all_formats = shared_defs.verify_instruction_formats(); @@ -62,31 +58,5 @@ pub fn generate( )?; } - for isa in new_backend_isas { - match isa { - isa::Isa::X86 => { - // If the old backend ISAs contained x86, this file has already been generated. - if old_backend_isas.iter().any(|isa| *isa == isa::Isa::X86) { - continue; - } - - let settings = crate::isa::x86::define_settings(&shared_defs.settings); - gen_settings::generate( - &settings, - gen_settings::ParentGroup::Shared, - "settings-x86.rs", - &out_dir, - )?; - } - isa::Isa::Arm64 => { - // aarch64 doesn't have platform-specific settings. - } - isa::Isa::S390x => { - // s390x doesn't have platform-specific settings. - } - isa::Isa::Arm32 => todo!(), - } - } - Ok(()) }