@@ -969,44 +969,11 @@ define <8 x i64> @shuffle_v8i64_as_i128(<8 x i64> %v) {
969
969
ret <8 x i64 > %shuffle
970
970
}
971
971
972
- ; Test case where first span has undefs
973
- define <8 x i64 > @shuffle_v8i64_as_i128_2 (<8 x i64 > %v ) {
974
- ; CHECK-LABEL: shuffle_v8i64_as_i128_2:
975
- ; CHECK: # %bb.0:
976
- ; CHECK-NEXT: lui a0, %hi(.LCPI30_0)
977
- ; CHECK-NEXT: addi a0, a0, %lo(.LCPI30_0)
978
- ; CHECK-NEXT: vsetivli zero, 8, e16, m1, ta, ma
979
- ; CHECK-NEXT: vle16.v v16, (a0)
980
- ; CHECK-NEXT: vsetvli a0, zero, e64, m1, ta, ma
981
- ; CHECK-NEXT: vrgatherei16.vv v13, v9, v16
982
- ; CHECK-NEXT: vrgatherei16.vv v12, v8, v16
983
- ; CHECK-NEXT: vrgatherei16.vv v14, v10, v16
984
- ; CHECK-NEXT: vrgatherei16.vv v15, v11, v16
985
- ; CHECK-NEXT: vmv4r.v v8, v12
986
- ; CHECK-NEXT: ret
987
- ;
988
- ; ZVKB-V-LABEL: shuffle_v8i64_as_i128_2:
989
- ; ZVKB-V: # %bb.0:
990
- ; ZVKB-V-NEXT: lui a0, %hi(.LCPI30_0)
991
- ; ZVKB-V-NEXT: addi a0, a0, %lo(.LCPI30_0)
992
- ; ZVKB-V-NEXT: vsetivli zero, 8, e16, m1, ta, ma
993
- ; ZVKB-V-NEXT: vle16.v v16, (a0)
994
- ; ZVKB-V-NEXT: vsetvli a0, zero, e64, m1, ta, ma
995
- ; ZVKB-V-NEXT: vrgatherei16.vv v13, v9, v16
996
- ; ZVKB-V-NEXT: vrgatherei16.vv v12, v8, v16
997
- ; ZVKB-V-NEXT: vrgatherei16.vv v14, v10, v16
998
- ; ZVKB-V-NEXT: vrgatherei16.vv v15, v11, v16
999
- ; ZVKB-V-NEXT: vmv4r.v v8, v12
1000
- ; ZVKB-V-NEXT: ret
1001
- %shuffle = shufflevector <8 x i64 > %v , <8 x i64 > poison, <8 x i32 > <i32 undef , i32 undef , i32 3 , i32 2 , i32 5 , i32 4 , i32 7 , i32 6 >
1002
- ret <8 x i64 > %shuffle
1003
- }
1004
-
1005
972
define <8 x i64 > @shuffle_v8i64_as_i256 (<8 x i64 > %v ) {
1006
973
; CHECK-LABEL: shuffle_v8i64_as_i256:
1007
974
; CHECK: # %bb.0:
1008
- ; CHECK-NEXT: lui a0, %hi(.LCPI31_0 )
1009
- ; CHECK-NEXT: addi a0, a0, %lo(.LCPI31_0 )
975
+ ; CHECK-NEXT: lui a0, %hi(.LCPI30_0 )
976
+ ; CHECK-NEXT: addi a0, a0, %lo(.LCPI30_0 )
1010
977
; CHECK-NEXT: vsetivli zero, 8, e64, m4, ta, ma
1011
978
; CHECK-NEXT: vle16.v v16, (a0)
1012
979
; CHECK-NEXT: vrgatherei16.vv v12, v8, v16
@@ -1015,8 +982,8 @@ define <8 x i64> @shuffle_v8i64_as_i256(<8 x i64> %v) {
1015
982
;
1016
983
; ZVKB-V-LABEL: shuffle_v8i64_as_i256:
1017
984
; ZVKB-V: # %bb.0:
1018
- ; ZVKB-V-NEXT: lui a0, %hi(.LCPI31_0 )
1019
- ; ZVKB-V-NEXT: addi a0, a0, %lo(.LCPI31_0 )
985
+ ; ZVKB-V-NEXT: lui a0, %hi(.LCPI30_0 )
986
+ ; ZVKB-V-NEXT: addi a0, a0, %lo(.LCPI30_0 )
1020
987
; ZVKB-V-NEXT: vsetivli zero, 8, e64, m4, ta, ma
1021
988
; ZVKB-V-NEXT: vle16.v v16, (a0)
1022
989
; ZVKB-V-NEXT: vrgatherei16.vv v12, v8, v16
@@ -1029,8 +996,8 @@ define <8 x i64> @shuffle_v8i64_as_i256(<8 x i64> %v) {
1029
996
define <8 x i64 > @shuffle_v8i64_as_i256_zvl256b (<8 x i64 > %v ) vscale_range(4 ,0 ) {
1030
997
; CHECK-LABEL: shuffle_v8i64_as_i256_zvl256b:
1031
998
; CHECK: # %bb.0:
1032
- ; CHECK-NEXT: lui a0, %hi(.LCPI32_0 )
1033
- ; CHECK-NEXT: addi a0, a0, %lo(.LCPI32_0 )
999
+ ; CHECK-NEXT: lui a0, %hi(.LCPI31_0 )
1000
+ ; CHECK-NEXT: addi a0, a0, %lo(.LCPI31_0 )
1034
1001
; CHECK-NEXT: vsetivli zero, 8, e16, mf2, ta, ma
1035
1002
; CHECK-NEXT: vle16.v v12, (a0)
1036
1003
; CHECK-NEXT: vsetvli a0, zero, e64, m1, ta, ma
@@ -1041,8 +1008,8 @@ define <8 x i64> @shuffle_v8i64_as_i256_zvl256b(<8 x i64> %v) vscale_range(4,0)
1041
1008
;
1042
1009
; ZVKB-V-LABEL: shuffle_v8i64_as_i256_zvl256b:
1043
1010
; ZVKB-V: # %bb.0:
1044
- ; ZVKB-V-NEXT: lui a0, %hi(.LCPI32_0 )
1045
- ; ZVKB-V-NEXT: addi a0, a0, %lo(.LCPI32_0 )
1011
+ ; ZVKB-V-NEXT: lui a0, %hi(.LCPI31_0 )
1012
+ ; ZVKB-V-NEXT: addi a0, a0, %lo(.LCPI31_0 )
1046
1013
; ZVKB-V-NEXT: vsetivli zero, 8, e16, mf2, ta, ma
1047
1014
; ZVKB-V-NEXT: vle16.v v12, (a0)
1048
1015
; ZVKB-V-NEXT: vsetvli a0, zero, e64, m1, ta, ma
0 commit comments