Skip to content

Commit 863f996

Browse files
topperctru
authored andcommitted
[RISCV] vsha2cl intrinsics should select vsha2cl instructions.
Fixes llvm#151814. (cherry picked from commit a585d57)
1 parent c7ac782 commit 863f996

File tree

2 files changed

+7
-7
lines changed

2 files changed

+7
-7
lines changed

llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1130,13 +1130,13 @@ let Predicates = [HasStdExtZvkned] in {
11301130

11311131
let Predicates = [HasStdExtZvknha] in {
11321132
defm : VPatBinaryV_VV_NoMask<"int_riscv_vsha2ch", "PseudoVSHA2CH", I32IntegerVectors>;
1133-
defm : VPatBinaryV_VV_NoMask<"int_riscv_vsha2cl", "PseudoVSHA2CH", I32IntegerVectors>;
1133+
defm : VPatBinaryV_VV_NoMask<"int_riscv_vsha2cl", "PseudoVSHA2CL", I32IntegerVectors>;
11341134
defm : VPatBinaryV_VV_NoMask<"int_riscv_vsha2ms", "PseudoVSHA2MS", I32IntegerVectors, isSEWAware=true>;
11351135
} // Predicates = [HasStdExtZvknha]
11361136

11371137
let Predicates = [HasStdExtZvknhb] in {
11381138
defm : VPatBinaryV_VV_NoMask<"int_riscv_vsha2ch", "PseudoVSHA2CH", I32I64IntegerVectors>;
1139-
defm : VPatBinaryV_VV_NoMask<"int_riscv_vsha2cl", "PseudoVSHA2CH", I32I64IntegerVectors>;
1139+
defm : VPatBinaryV_VV_NoMask<"int_riscv_vsha2cl", "PseudoVSHA2CL", I32I64IntegerVectors>;
11401140
defm : VPatBinaryV_VV_NoMask<"int_riscv_vsha2ms", "PseudoVSHA2MS", I32I64IntegerVectors, isSEWAware=true>;
11411141
} // Predicates = [HasStdExtZvknhb]
11421142

llvm/test/CodeGen/RISCV/rvv/vsha2cl.ll

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ define <vscale x 4 x i32> @intrinsic_vsha2cl_vv_nxv4i32_nxv4i32(<vscale x 4 x i3
2121
; CHECK-LABEL: intrinsic_vsha2cl_vv_nxv4i32_nxv4i32:
2222
; CHECK: # %bb.0: # %entry
2323
; CHECK-NEXT: vsetvli zero, a0, e32, m2, tu, ma
24-
; CHECK-NEXT: vsha2ch.vv v8, v10, v12
24+
; CHECK-NEXT: vsha2cl.vv v8, v10, v12
2525
; CHECK-NEXT: ret
2626
entry:
2727
%a = call <vscale x 4 x i32> @llvm.riscv.vsha2cl.nxv4i32.nxv4i32(
@@ -45,7 +45,7 @@ define <vscale x 8 x i32> @intrinsic_vsha2cl_vv_nxv8i32_nxv8i32(<vscale x 8 x i3
4545
; CHECK-LABEL: intrinsic_vsha2cl_vv_nxv8i32_nxv8i32:
4646
; CHECK: # %bb.0: # %entry
4747
; CHECK-NEXT: vsetvli zero, a0, e32, m4, tu, ma
48-
; CHECK-NEXT: vsha2ch.vv v8, v12, v16
48+
; CHECK-NEXT: vsha2cl.vv v8, v12, v16
4949
; CHECK-NEXT: ret
5050
entry:
5151
%a = call <vscale x 8 x i32> @llvm.riscv.vsha2cl.nxv8i32.nxv8i32(
@@ -70,7 +70,7 @@ define <vscale x 16 x i32> @intrinsic_vsha2cl_vv_nxv16i32_nxv16i32(<vscale x 16
7070
; CHECK: # %bb.0: # %entry
7171
; CHECK-NEXT: vl8re32.v v24, (a0)
7272
; CHECK-NEXT: vsetvli zero, a1, e32, m8, tu, ma
73-
; CHECK-NEXT: vsha2ch.vv v8, v16, v24
73+
; CHECK-NEXT: vsha2cl.vv v8, v16, v24
7474
; CHECK-NEXT: ret
7575
entry:
7676
%a = call <vscale x 16 x i32> @llvm.riscv.vsha2cl.nxv16i32.nxv16i32(
@@ -94,7 +94,7 @@ define <vscale x 4 x i64> @intrinsic_vsha2cl_vv_nxv4i64_nxv4i64(<vscale x 4 x i6
9494
; CHECK-LABEL: intrinsic_vsha2cl_vv_nxv4i64_nxv4i64:
9595
; CHECK: # %bb.0: # %entry
9696
; CHECK-NEXT: vsetvli zero, a0, e64, m4, tu, ma
97-
; CHECK-NEXT: vsha2ch.vv v8, v12, v16
97+
; CHECK-NEXT: vsha2cl.vv v8, v12, v16
9898
; CHECK-NEXT: ret
9999
entry:
100100
%a = call <vscale x 4 x i64> @llvm.riscv.vsha2cl.nxv4i64.nxv4i64(
@@ -119,7 +119,7 @@ define <vscale x 8 x i64> @intrinsic_vsha2cl_vv_nxv8i64_nxv8i64(<vscale x 8 x i6
119119
; CHECK: # %bb.0: # %entry
120120
; CHECK-NEXT: vl8re64.v v24, (a0)
121121
; CHECK-NEXT: vsetvli zero, a1, e64, m8, tu, ma
122-
; CHECK-NEXT: vsha2ch.vv v8, v16, v24
122+
; CHECK-NEXT: vsha2cl.vv v8, v16, v24
123123
; CHECK-NEXT: ret
124124
entry:
125125
%a = call <vscale x 8 x i64> @llvm.riscv.vsha2cl.nxv8i64.nxv8i64(

0 commit comments

Comments
 (0)