@@ -597,6 +597,8 @@ fn reg_to_gcc(reg: InlineAsmRegOrRegClass) -> ConstraintOrRegister {
597
597
InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg) => "r" ,
598
598
InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg_addr) => "a" ,
599
599
InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg_data) => "d" ,
600
+ InlineAsmRegClass :: CSKY ( CSKYInlineAsmRegClass :: reg) => "r" ,
601
+ InlineAsmRegClass :: CSKY ( CSKYInlineAsmRegClass :: freg) => "f" ,
600
602
InlineAsmRegClass :: Mips ( MipsInlineAsmRegClass :: reg) => "d" , // more specific than "r"
601
603
InlineAsmRegClass :: Mips ( MipsInlineAsmRegClass :: freg) => "f" ,
602
604
InlineAsmRegClass :: Msp430 ( Msp430InlineAsmRegClass :: reg) => "r" ,
@@ -673,6 +675,8 @@ fn dummy_output_type<'gcc, 'tcx>(cx: &CodegenCx<'gcc, 'tcx>, reg: InlineAsmRegCl
673
675
InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg) => cx. type_i32 ( ) ,
674
676
InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg_addr) => cx. type_i32 ( ) ,
675
677
InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg_data) => cx. type_i32 ( ) ,
678
+ InlineAsmRegClass :: CSKY ( CSKYInlineAsmRegClass :: reg) => cx. type_i32 ( ) ,
679
+ InlineAsmRegClass :: CSKY ( CSKYInlineAsmRegClass :: freg) => cx. type_f32 ( ) ,
676
680
InlineAsmRegClass :: Mips ( MipsInlineAsmRegClass :: reg) => cx. type_i32 ( ) ,
677
681
InlineAsmRegClass :: Mips ( MipsInlineAsmRegClass :: freg) => cx. type_f32 ( ) ,
678
682
InlineAsmRegClass :: Msp430 ( _) => unimplemented ! ( ) ,
@@ -860,6 +864,7 @@ fn modifier_to_gcc(arch: InlineAsmArch, reg: InlineAsmRegClass, modifier: Option
860
864
InlineAsmRegClass :: S390x ( _) => None ,
861
865
InlineAsmRegClass :: Msp430 ( _) => None ,
862
866
InlineAsmRegClass :: M68k ( _) => None ,
867
+ InlineAsmRegClass :: CSKY ( _) => None ,
863
868
InlineAsmRegClass :: SpirV ( SpirVInlineAsmRegClass :: reg) => {
864
869
bug ! ( "LLVM backend does not support SPIR-V" )
865
870
}
0 commit comments