diff options
| author | WANG Rui <wangrui@loongson.cn> | 2025-06-09 22:29:59 +0800 |
|---|---|---|
| committer | WANG Rui <wangrui@loongson.cn> | 2025-06-10 18:50:41 +0800 |
| commit | de8a91b51c3fbc60e80a75e2859e371e7de7e1ec (patch) | |
| tree | aab88fe6e714174f40f8b2c1fa8e7a45f26fc4bc /compiler/rustc_target | |
| parent | 7c10378e1fee5ddc6573b916aeb884ab10e0de17 (diff) | |
| download | rust-de8a91b51c3fbc60e80a75e2859e371e7de7e1ec.tar.gz rust-de8a91b51c3fbc60e80a75e2859e371e7de7e1ec.zip | |
Add supported asm types for LoongArch32
Diffstat (limited to 'compiler/rustc_target')
| -rw-r--r-- | compiler/rustc_target/src/asm/loongarch.rs | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/compiler/rustc_target/src/asm/loongarch.rs b/compiler/rustc_target/src/asm/loongarch.rs index b4ea6fc592a..8783d3953b1 100644 --- a/compiler/rustc_target/src/asm/loongarch.rs +++ b/compiler/rustc_target/src/asm/loongarch.rs @@ -34,11 +34,13 @@ impl LoongArchInlineAsmRegClass { pub fn supported_types( self, - _arch: InlineAsmArch, + arch: InlineAsmArch, ) -> &'static [(InlineAsmType, Option<Symbol>)] { - match self { - Self::reg => types! { _: I8, I16, I32, I64, F32, F64; }, - Self::freg => types! { f: F32; d: F64; }, + match (self, arch) { + (Self::reg, InlineAsmArch::LoongArch64) => types! { _: I8, I16, I32, I64, F32, F64; }, + (Self::reg, InlineAsmArch::LoongArch32) => types! { _: I8, I16, I32, F32; }, + (Self::freg, _) => types! { f: F32; d: F64; }, + _ => unreachable!("unsupported register class"), } } } |
