@@ -939,9 +939,10 @@ fn llvm_fixup_input<'ll, 'tcx>(
939939 }
940940 bx. insert_element ( bx. const_undef ( vec_ty) , value, bx. const_i32 ( 0 ) )
941941 }
942- ( AArch64 ( AArch64InlineAsmRegClass :: vreg_low16) , BackendRepr :: Vector { element, count } )
943- if layout. size . bytes ( ) == 8 =>
944- {
942+ (
943+ AArch64 ( AArch64InlineAsmRegClass :: vreg_low16) ,
944+ BackendRepr :: SimdVector { element, count } ,
945+ ) if layout. size . bytes ( ) == 8 => {
945946 let elem_ty = llvm_asm_scalar_type ( bx. cx , element) ;
946947 let vec_ty = bx. cx . type_vector ( elem_ty, count) ;
947948 let indices: Vec < _ > = ( 0 ..count * 2 ) . map ( |x| bx. const_i32 ( x as i32 ) ) . collect ( ) ;
@@ -954,7 +955,7 @@ fn llvm_fixup_input<'ll, 'tcx>(
954955 }
955956 (
956957 X86 ( X86InlineAsmRegClass :: xmm_reg | X86InlineAsmRegClass :: zmm_reg) ,
957- BackendRepr :: Vector { .. } ,
958+ BackendRepr :: SimdVector { .. } ,
958959 ) if layout. size . bytes ( ) == 64 => bx. bitcast ( value, bx. cx . type_vector ( bx. cx . type_f64 ( ) , 8 ) ) ,
959960 (
960961 X86 (
@@ -989,7 +990,7 @@ fn llvm_fixup_input<'ll, 'tcx>(
989990 | X86InlineAsmRegClass :: ymm_reg
990991 | X86InlineAsmRegClass :: zmm_reg,
991992 ) ,
992- BackendRepr :: Vector { element, count : count @ ( 8 | 16 ) } ,
993+ BackendRepr :: SimdVector { element, count : count @ ( 8 | 16 ) } ,
993994 ) if element. primitive ( ) == Primitive :: Float ( Float :: F16 ) => {
994995 bx. bitcast ( value, bx. type_vector ( bx. type_i16 ( ) , count) )
995996 }
@@ -1026,7 +1027,7 @@ fn llvm_fixup_input<'ll, 'tcx>(
10261027 | ArmInlineAsmRegClass :: qreg_low4
10271028 | ArmInlineAsmRegClass :: qreg_low8,
10281029 ) ,
1029- BackendRepr :: Vector { element, count : count @ ( 4 | 8 ) } ,
1030+ BackendRepr :: SimdVector { element, count : count @ ( 4 | 8 ) } ,
10301031 ) if element. primitive ( ) == Primitive :: Float ( Float :: F16 ) => {
10311032 bx. bitcast ( value, bx. type_vector ( bx. type_i16 ( ) , count) )
10321033 }
@@ -1099,9 +1100,10 @@ fn llvm_fixup_output<'ll, 'tcx>(
10991100 }
11001101 value
11011102 }
1102- ( AArch64 ( AArch64InlineAsmRegClass :: vreg_low16) , BackendRepr :: Vector { element, count } )
1103- if layout. size . bytes ( ) == 8 =>
1104- {
1103+ (
1104+ AArch64 ( AArch64InlineAsmRegClass :: vreg_low16) ,
1105+ BackendRepr :: SimdVector { element, count } ,
1106+ ) if layout. size . bytes ( ) == 8 => {
11051107 let elem_ty = llvm_asm_scalar_type ( bx. cx , element) ;
11061108 let vec_ty = bx. cx . type_vector ( elem_ty, count * 2 ) ;
11071109 let indices: Vec < _ > = ( 0 ..count) . map ( |x| bx. const_i32 ( x as i32 ) ) . collect ( ) ;
@@ -1114,7 +1116,7 @@ fn llvm_fixup_output<'ll, 'tcx>(
11141116 }
11151117 (
11161118 X86 ( X86InlineAsmRegClass :: xmm_reg | X86InlineAsmRegClass :: zmm_reg) ,
1117- BackendRepr :: Vector { .. } ,
1119+ BackendRepr :: SimdVector { .. } ,
11181120 ) if layout. size . bytes ( ) == 64 => bx. bitcast ( value, layout. llvm_type ( bx. cx ) ) ,
11191121 (
11201122 X86 (
@@ -1145,7 +1147,7 @@ fn llvm_fixup_output<'ll, 'tcx>(
11451147 | X86InlineAsmRegClass :: ymm_reg
11461148 | X86InlineAsmRegClass :: zmm_reg,
11471149 ) ,
1148- BackendRepr :: Vector { element, count : count @ ( 8 | 16 ) } ,
1150+ BackendRepr :: SimdVector { element, count : count @ ( 8 | 16 ) } ,
11491151 ) if element. primitive ( ) == Primitive :: Float ( Float :: F16 ) => {
11501152 bx. bitcast ( value, bx. type_vector ( bx. type_f16 ( ) , count) )
11511153 }
@@ -1182,7 +1184,7 @@ fn llvm_fixup_output<'ll, 'tcx>(
11821184 | ArmInlineAsmRegClass :: qreg_low4
11831185 | ArmInlineAsmRegClass :: qreg_low8,
11841186 ) ,
1185- BackendRepr :: Vector { element, count : count @ ( 4 | 8 ) } ,
1187+ BackendRepr :: SimdVector { element, count : count @ ( 4 | 8 ) } ,
11861188 ) if element. primitive ( ) == Primitive :: Float ( Float :: F16 ) => {
11871189 bx. bitcast ( value, bx. type_vector ( bx. type_f16 ( ) , count) )
11881190 }
@@ -1243,9 +1245,10 @@ fn llvm_fixup_output_type<'ll, 'tcx>(
12431245 let count = 16 / layout. size . bytes ( ) ;
12441246 cx. type_vector ( elem_ty, count)
12451247 }
1246- ( AArch64 ( AArch64InlineAsmRegClass :: vreg_low16) , BackendRepr :: Vector { element, count } )
1247- if layout. size . bytes ( ) == 8 =>
1248- {
1248+ (
1249+ AArch64 ( AArch64InlineAsmRegClass :: vreg_low16) ,
1250+ BackendRepr :: SimdVector { element, count } ,
1251+ ) if layout. size . bytes ( ) == 8 => {
12491252 let elem_ty = llvm_asm_scalar_type ( cx, element) ;
12501253 cx. type_vector ( elem_ty, count * 2 )
12511254 }
@@ -1256,7 +1259,7 @@ fn llvm_fixup_output_type<'ll, 'tcx>(
12561259 }
12571260 (
12581261 X86 ( X86InlineAsmRegClass :: xmm_reg | X86InlineAsmRegClass :: zmm_reg) ,
1259- BackendRepr :: Vector { .. } ,
1262+ BackendRepr :: SimdVector { .. } ,
12601263 ) if layout. size . bytes ( ) == 64 => cx. type_vector ( cx. type_f64 ( ) , 8 ) ,
12611264 (
12621265 X86 (
@@ -1284,7 +1287,7 @@ fn llvm_fixup_output_type<'ll, 'tcx>(
12841287 | X86InlineAsmRegClass :: ymm_reg
12851288 | X86InlineAsmRegClass :: zmm_reg,
12861289 ) ,
1287- BackendRepr :: Vector { element, count : count @ ( 8 | 16 ) } ,
1290+ BackendRepr :: SimdVector { element, count : count @ ( 8 | 16 ) } ,
12881291 ) if element. primitive ( ) == Primitive :: Float ( Float :: F16 ) => {
12891292 cx. type_vector ( cx. type_i16 ( ) , count)
12901293 }
@@ -1321,7 +1324,7 @@ fn llvm_fixup_output_type<'ll, 'tcx>(
13211324 | ArmInlineAsmRegClass :: qreg_low4
13221325 | ArmInlineAsmRegClass :: qreg_low8,
13231326 ) ,
1324- BackendRepr :: Vector { element, count : count @ ( 4 | 8 ) } ,
1327+ BackendRepr :: SimdVector { element, count : count @ ( 4 | 8 ) } ,
13251328 ) if element. primitive ( ) == Primitive :: Float ( Float :: F16 ) => {
13261329 cx. type_vector ( cx. type_i16 ( ) , count)
13271330 }
0 commit comments