# --- T2-COPYRIGHT-BEGIN --- # t2/package/*/rustc/hotfix-i686-no-sse2.patch # Copyright (C) 2025 The T2 SDE Project # SPDX-License-Identifier: GPL-2.0 or patched project license # --- T2-COPYRIGHT-END --- --- rustc-1.88.0-src/compiler/rustc_target/src/spec/targets/i686_unknown_linux_gnu.rs.vanilla 2025-07-23 15:24:39.423515725 +0200 +++ rustc-1.88.0-src/compiler/rustc_target/src/spec/targets/i686_unknown_linux_gnu.rs 2025-07-23 15:32:10.874903162 +0200 @@ -1,10 +1,10 @@ use crate::spec::{ - Cc, LinkerFlavor, Lld, RustcAbi, SanitizerSet, StackProbeType, Target, TargetMetadata, base, + Cc, LinkerFlavor, Lld, SanitizerSet, StackProbeType, Target, TargetMetadata, base, }; pub(crate) fn target() -> Target { let mut base = base::linux_gnu::opts(); - base.rustc_abi = Some(RustcAbi::X86Sse2); + //base.rustc_abi = Some(RustcAbi::X86Sse2); // Dear distribution packager, if you are changing the base CPU model with the goal of removing // the SSE2 requirement, make sure to also set the `rustc_abi` to `None` above or else the compiler // will complain that the chosen ABI cannot be realized with the given CPU features. @@ -16,7 +16,7 @@ // can lead to memory safety violations if floating-point values are used e.g. to access an // array. If users run into such issues and report bugs upstream and then it turns out that the // bugs are caused by distribution patches, that leads to confusion and frustration. - base.cpu = "pentium4".into(); + base.cpu = "i686".into(); base.max_atomic_width = Some(64); base.supported_sanitizers = SanitizerSet::ADDRESS; base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-m32"]);