about summary refs log tree commit diff
path: root/compiler/rustc_codegen_cranelift/src/lib.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2025-02-08 18:23:41 +0000
committerbors <bors@rust-lang.org>2025-02-08 18:23:41 +0000
commit73bf7947e9ab731bf2764db219cd9cda216a3aed (patch)
treebd533b65c0b92f2e46215680eb85fc675b15cf40 /compiler/rustc_codegen_cranelift/src/lib.rs
parent8ad2c9724d983cfb116baab0bb800edd17f31644 (diff)
parentcac271fd388c0f6a4611ac240ba43fd941eeae21 (diff)
downloadrust-73bf7947e9ab731bf2764db219cd9cda216a3aed.tar.gz
rust-73bf7947e9ab731bf2764db219cd9cda216a3aed.zip
Auto merge of #136715 - bjorn3:sync_cg_clif-2025-02-07, r=bjorn3
Subtree sync for rustc_codegen_cranelift

The main highlights this time are a Cranelift update and a fix for a warning that the x87 feature is not enabled.

r? `@ghost`

`@rustbot` label +A-codegen +A-cranelift +T-compiler<!-- homu-ignore:start -->
Diffstat (limited to 'compiler/rustc_codegen_cranelift/src/lib.rs')
-rw-r--r--compiler/rustc_codegen_cranelift/src/lib.rs5
1 files changed, 2 insertions, 3 deletions
diff --git a/compiler/rustc_codegen_cranelift/src/lib.rs b/compiler/rustc_codegen_cranelift/src/lib.rs
index dc5d80e7a34..b0153419903 100644
--- a/compiler/rustc_codegen_cranelift/src/lib.rs
+++ b/compiler/rustc_codegen_cranelift/src/lib.rs
@@ -183,8 +183,8 @@ impl CodegenBackend for CraneliftCodegenBackend {
     ) -> Vec<rustc_span::Symbol> {
         // FIXME return the actually used target features. this is necessary for #[cfg(target_feature)]
         if sess.target.arch == "x86_64" && sess.target.os != "none" {
-            // x86_64 mandates SSE2 support
-            vec![sym::fsxr, sym::sse, sym::sse2]
+            // x86_64 mandates SSE2 support and rustc requires the x87 feature to be enabled
+            vec![sym::fsxr, sym::sse, sym::sse2, Symbol::intern("x87")]
         } else if sess.target.arch == "aarch64" {
             match &*sess.target.os {
                 "none" => vec![],
@@ -209,7 +209,6 @@ impl CodegenBackend for CraneliftCodegenBackend {
         metadata: EncodedMetadata,
         need_metadata_module: bool,
     ) -> Box<dyn Any> {
-        tcx.dcx().abort_if_errors();
         info!("codegen crate {}", tcx.crate_name(LOCAL_CRATE));
         let config = self.config.clone().unwrap_or_else(|| {
             BackendConfig::from_opts(&tcx.sess.opts.cg.llvm_args)