Skip to content

Commit f55f90c

Browse files
committed
fixup! Use WidenV for vfwmacc.4x4x4 and vqmacc*.4x8x4.
1 parent f8a386c commit f55f90c

File tree

3 files changed

+22
-2
lines changed

3 files changed

+22
-2
lines changed

llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -210,15 +210,15 @@ let Predicates = [HasVendorXSfvqmaccdod], DecoderNamespace = "XSfvqmaccdod",
210210
}
211211

212212
let Predicates = [HasVendorXSfvqmaccqoq], DecoderNamespace = "XSfvqmaccqoq",
213-
DestEEW = EEWSEWx4, RVVConstraint=VS2Constraint in {
213+
DestEEW = EEWSEWx4, RVVConstraint=WidenV in {
214214
def VQMACCU_4x8x4 : CustomSiFiveVMACC<0b111100, OPMVV, "sf.vqmaccu.4x8x4">;
215215
def VQMACC_4x8x4 : CustomSiFiveVMACC<0b111101, OPMVV, "sf.vqmacc.4x8x4">;
216216
def VQMACCUS_4x8x4 : CustomSiFiveVMACC<0b111110, OPMVV, "sf.vqmaccus.4x8x4">;
217217
def VQMACCSU_4x8x4 : CustomSiFiveVMACC<0b111111, OPMVV, "sf.vqmaccsu.4x8x4">;
218218
}
219219

220220
let Predicates = [HasVendorXSfvfwmaccqqq], DecoderNamespace = "XSfvfwmaccqqq",
221-
DestEEW = EEWSEWx2, RVVConstraint=VS2Constraint in {
221+
DestEEW = EEWSEWx2, RVVConstraint=WidenV in {
222222
def VFWMACC_4x4x4 : CustomSiFiveVMACC<0b111100, OPFVV, "sf.vfwmacc.4x4x4">;
223223
}
224224

llvm/test/MC/RISCV/rvv/xsfvfwmacc-invalid.s

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,7 @@
44
sf.vfwmacc.4x4x4 v8, v8, v20
55
# CHECK-ERROR: the destination vector register group cannot overlap the source vector register group{{$}}
66
# CHECK-ERROR-LABEL: sf.vfwmacc.4x4x4 v8, v8, v20{{$}}
7+
8+
sf.vfwmacc.4x4x4 v8, v4, v8
9+
# CHECK-ERROR: the destination vector register group cannot overlap the source vector register group{{$}}
10+
# CHECK-ERROR-LABEL: sf.vfwmacc.4x4x4 v8, v4, v8{{$}}

llvm/test/MC/RISCV/rvv/xsfvqmacc-invalid.s

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,19 @@ sf.vqmaccus.4x8x4 v8, v8, v20
3232
sf.vqmaccsu.4x8x4 v8, v8, v20
3333
# CHECK-ERROR: the destination vector register group cannot overlap the source vector register group{{$}}
3434
# CHECK-ERROR-LABEL: sf.vqmaccsu.4x8x4 v8, v8, v20
35+
36+
sf.vqmaccu.4x8x4 v8, v4, v8
37+
# CHECK-ERROR: the destination vector register group cannot overlap the source vector register group{{$}}
38+
# CHECK-ERROR-LABEL: sf.vqmaccu.4x8x4 v8, v4, v8
39+
40+
sf.vqmacc.4x8x4 v8, v4, v8
41+
# CHECK-ERROR: the destination vector register group cannot overlap the source vector register group{{$}}
42+
# CHECK-ERROR-LABEL: sf.vqmacc.4x8x4 v8, v4, v8
43+
44+
sf.vqmaccus.4x8x4 v8, v4, v8
45+
# CHECK-ERROR: the destination vector register group cannot overlap the source vector register group{{$}}
46+
# CHECK-ERROR-LABEL: sf.vqmaccus.4x8x4 v8, v4, v8
47+
48+
sf.vqmaccsu.4x8x4 v8, v4, v8
49+
# CHECK-ERROR: the destination vector register group cannot overlap the source vector register group{{$}}
50+
# CHECK-ERROR-LABEL: sf.vqmaccsu.4x8x4 v8, v4, v8

0 commit comments

Comments
 (0)