@@ -597,6 +597,8 @@ fn reg_to_gcc(reg: InlineAsmRegOrRegClass) -> ConstraintOrRegister {
597597 InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg) => "r" ,
598598 InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg_addr) => "a" ,
599599 InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg_data) => "d" ,
600+ InlineAsmRegClass :: CSKY ( CSKYInlineAsmRegClass :: reg) => "r" ,
601+ InlineAsmRegClass :: CSKY ( CSKYInlineAsmRegClass :: freg) => "f" ,
600602 InlineAsmRegClass :: Mips ( MipsInlineAsmRegClass :: reg) => "d" , // more specific than "r"
601603 InlineAsmRegClass :: Mips ( MipsInlineAsmRegClass :: freg) => "f" ,
602604 InlineAsmRegClass :: Msp430 ( Msp430InlineAsmRegClass :: reg) => "r" ,
@@ -673,6 +675,8 @@ fn dummy_output_type<'gcc, 'tcx>(cx: &CodegenCx<'gcc, 'tcx>, reg: InlineAsmRegCl
673675 InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg) => cx. type_i32 ( ) ,
674676 InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg_addr) => cx. type_i32 ( ) ,
675677 InlineAsmRegClass :: M68k ( M68kInlineAsmRegClass :: reg_data) => cx. type_i32 ( ) ,
678+ InlineAsmRegClass :: CSKY ( CSKYInlineAsmRegClass :: reg) => cx. type_i32 ( ) ,
679+ InlineAsmRegClass :: CSKY ( CSKYInlineAsmRegClass :: freg) => cx. type_f32 ( ) ,
676680 InlineAsmRegClass :: Mips ( MipsInlineAsmRegClass :: reg) => cx. type_i32 ( ) ,
677681 InlineAsmRegClass :: Mips ( MipsInlineAsmRegClass :: freg) => cx. type_f32 ( ) ,
678682 InlineAsmRegClass :: Msp430 ( _) => unimplemented ! ( ) ,
@@ -860,6 +864,7 @@ fn modifier_to_gcc(arch: InlineAsmArch, reg: InlineAsmRegClass, modifier: Option
860864 InlineAsmRegClass :: S390x ( _) => None ,
861865 InlineAsmRegClass :: Msp430 ( _) => None ,
862866 InlineAsmRegClass :: M68k ( _) => None ,
867+ InlineAsmRegClass :: CSKY ( _) => None ,
863868 InlineAsmRegClass :: SpirV ( SpirVInlineAsmRegClass :: reg) => {
864869 bug ! ( "LLVM backend does not support SPIR-V" )
865870 }
0 commit comments