1
Fork 0

remove platform-intrinsics ABI; make SIMD intrinsics be regular intrinsics

This commit is contained in:
Ralf Jung 2024-02-23 18:26:39 +01:00
parent e9f9594913
commit cc3df0af7b
25 changed files with 179 additions and 170 deletions

View file

@ -54,7 +54,6 @@ pub enum Abi {
},
RustIntrinsic,
RustCall,
PlatformIntrinsic,
Unadjusted,
/// For things unlikely to be called, where reducing register pressure in
/// `extern "Rust"` callers is worth paying extra cost in the callee.
@ -129,7 +128,6 @@ const AbiDatas: &[AbiData] = &[
AbiData { abi: Abi::System { unwind: true }, name: "system-unwind" },
AbiData { abi: Abi::RustIntrinsic, name: "rust-intrinsic" },
AbiData { abi: Abi::RustCall, name: "rust-call" },
AbiData { abi: Abi::PlatformIntrinsic, name: "platform-intrinsic" },
AbiData { abi: Abi::Unadjusted, name: "unadjusted" },
AbiData { abi: Abi::RustCold, name: "rust-cold" },
AbiData { abi: Abi::RiscvInterruptM, name: "riscv-interrupt-m" },
@ -199,10 +197,6 @@ pub fn is_stable(name: &str) -> Result<(), AbiDisabled> {
feature: sym::intrinsics,
explain: "intrinsics are subject to change",
}),
"platform-intrinsic" => Err(AbiDisabled::Unstable {
feature: sym::platform_intrinsics,
explain: "platform intrinsics are experimental and possibly buggy",
}),
"vectorcall" => Err(AbiDisabled::Unstable {
feature: sym::abi_vectorcall,
explain: "vectorcall is experimental and subject to change",
@ -299,11 +293,10 @@ impl Abi {
System { unwind: true } => 28,
RustIntrinsic => 29,
RustCall => 30,
PlatformIntrinsic => 31,
Unadjusted => 32,
RustCold => 33,
RiscvInterruptM => 34,
RiscvInterruptS => 35,
Unadjusted => 31,
RustCold => 32,
RiscvInterruptM => 33,
RiscvInterruptS => 34,
};
debug_assert!(
AbiDatas

View file

@ -2448,7 +2448,6 @@ impl Target {
| System { .. }
| RustIntrinsic
| RustCall
| PlatformIntrinsic
| Unadjusted
| Cdecl { .. }
| RustCold => true,