@@ -226,6 +226,7 @@ pub enum InlineAsmArch {
226226 RiscV64 ,
227227 Nvptx64 ,
228228 Hexagon ,
229+ LoongArch32 ,
229230 LoongArch64 ,
230231 Mips ,
231232 Mips64 ,
@@ -260,6 +261,7 @@ impl FromStr for InlineAsmArch {
260261 "powerpc" => Ok ( Self :: PowerPC ) ,
261262 "powerpc64" => Ok ( Self :: PowerPC64 ) ,
262263 "hexagon" => Ok ( Self :: Hexagon ) ,
264+ "loongarch32" => Ok ( Self :: LoongArch32 ) ,
263265 "loongarch64" => Ok ( Self :: LoongArch64 ) ,
264266 "mips" | "mips32r6" => Ok ( Self :: Mips ) ,
265267 "mips64" | "mips64r6" => Ok ( Self :: Mips64 ) ,
@@ -365,7 +367,9 @@ impl InlineAsmReg {
365367 Self :: PowerPC ( PowerPCInlineAsmReg :: parse ( name) ?)
366368 }
367369 InlineAsmArch :: Hexagon => Self :: Hexagon ( HexagonInlineAsmReg :: parse ( name) ?) ,
368- InlineAsmArch :: LoongArch64 => Self :: LoongArch ( LoongArchInlineAsmReg :: parse ( name) ?) ,
370+ InlineAsmArch :: LoongArch32 | InlineAsmArch :: LoongArch64 => {
371+ Self :: LoongArch ( LoongArchInlineAsmReg :: parse ( name) ?)
372+ }
369373 InlineAsmArch :: Mips | InlineAsmArch :: Mips64 => {
370374 Self :: Mips ( MipsInlineAsmReg :: parse ( name) ?)
371375 }
@@ -652,7 +656,9 @@ impl InlineAsmRegClass {
652656 Self :: PowerPC ( PowerPCInlineAsmRegClass :: parse ( name) ?)
653657 }
654658 InlineAsmArch :: Hexagon => Self :: Hexagon ( HexagonInlineAsmRegClass :: parse ( name) ?) ,
655- InlineAsmArch :: LoongArch64 => Self :: LoongArch ( LoongArchInlineAsmRegClass :: parse ( name) ?) ,
659+ InlineAsmArch :: LoongArch32 | InlineAsmArch :: LoongArch64 => {
660+ Self :: LoongArch ( LoongArchInlineAsmRegClass :: parse ( name) ?)
661+ }
656662 InlineAsmArch :: Mips | InlineAsmArch :: Mips64 => {
657663 Self :: Mips ( MipsInlineAsmRegClass :: parse ( name) ?)
658664 }
@@ -860,7 +866,7 @@ pub fn allocatable_registers(
860866 hexagon:: fill_reg_map ( arch, reloc_model, target_features, target, & mut map) ;
861867 map
862868 }
863- InlineAsmArch :: LoongArch64 => {
869+ InlineAsmArch :: LoongArch32 | InlineAsmArch :: LoongArch64 => {
864870 let mut map = loongarch:: regclass_map ( ) ;
865871 loongarch:: fill_reg_map ( arch, reloc_model, target_features, target, & mut map) ;
866872 map
@@ -992,7 +998,7 @@ impl InlineAsmClobberAbi {
992998 "C" | "system" => Ok ( InlineAsmClobberAbi :: Avr ) ,
993999 _ => Err ( & [ "C" , "system" ] ) ,
9941000 } ,
995- InlineAsmArch :: LoongArch64 => match name {
1001+ InlineAsmArch :: LoongArch32 | InlineAsmArch :: LoongArch64 => match name {
9961002 "C" | "system" => Ok ( InlineAsmClobberAbi :: LoongArch ) ,
9971003 _ => Err ( & [ "C" , "system" ] ) ,
9981004 } ,
0 commit comments