Skip to content

Commit ade6f35

Browse files
fixup! show render-vlop works for rv32 and rv64
1 parent 1fa0f30 commit ade6f35

File tree

2 files changed

+76
-0
lines changed

2 files changed

+76
-0
lines changed
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 5
2+
# RUN: llc -mtriple=riscv64 -mattr=+v,+m -run-pass=instruction-select \
3+
# RUN: -verify-machineinstrs %s -o - | FileCheck %s
4+
5+
---
6+
name: negative_vl
7+
legalized: true
8+
regBankSelected: true
9+
tracksRegLiveness: true
10+
body: |
11+
bb.1:
12+
; CHECK-LABEL: name: negative_vl
13+
; CHECK: [[ADDI:%[0-9]+]]:gprnox0 = ADDI $x0, -2
14+
; CHECK-NEXT: [[PseudoVMCLR_M_B1_:%[0-9]+]]:vr = PseudoVMCLR_M_B1 [[ADDI]], 0 /* e8 */
15+
; CHECK-NEXT: $v0 = COPY [[PseudoVMCLR_M_B1_]]
16+
; CHECK-NEXT: PseudoRET implicit $v0
17+
%0:gprb(s64) = G_CONSTANT i64 -2
18+
%1:vrb(<vscale x 1 x s1>) = G_VMCLR_VL %0(s64)
19+
$v0 = COPY %1(<vscale x 1 x s1>)
20+
PseudoRET implicit $v0
21+
...
22+
---
23+
name: nonconst_vl
24+
legalized: true
25+
regBankSelected: true
26+
tracksRegLiveness: true
27+
body: |
28+
bb.1:
29+
liveins: $x10
30+
; CHECK-LABEL: name: nonconst_vl
31+
; CHECK: liveins: $x10
32+
; CHECK-NEXT: {{ $}}
33+
; CHECK-NEXT: [[COPY:%[0-9]+]]:gprnox0 = COPY $x10
34+
; CHECK-NEXT: [[PseudoVMCLR_M_B1_:%[0-9]+]]:vr = PseudoVMCLR_M_B1 [[COPY]], 0 /* e8 */
35+
; CHECK-NEXT: $v0 = COPY [[PseudoVMCLR_M_B1_]]
36+
; CHECK-NEXT: PseudoRET implicit $v0
37+
%0:gprb(s64) = COPY $x10
38+
%1:vrb(<vscale x 1 x s1>) = G_VMCLR_VL %0(s64)
39+
$v0 = COPY %1(<vscale x 1 x s1>)
40+
PseudoRET implicit $v0
41+
...
42+
43+
---
44+
name: nonzero_vl
45+
legalized: true
46+
regBankSelected: true
47+
tracksRegLiveness: true
48+
body: |
49+
bb.1:
50+
; CHECK-LABEL: name: nonzero_vl
51+
; CHECK: [[PseudoVMCLR_M_B1_:%[0-9]+]]:vr = PseudoVMCLR_M_B1 1, 0 /* e8 */
52+
; CHECK-NEXT: $v0 = COPY [[PseudoVMCLR_M_B1_]]
53+
; CHECK-NEXT: PseudoRET implicit $v0
54+
%0:gprb(s64) = G_CONSTANT i64 1
55+
%1:vrb(<vscale x 1 x s1>) = G_VMCLR_VL %0(s64)
56+
$v0 = COPY %1(<vscale x 1 x s1>)
57+
PseudoRET implicit $v0
58+
...
59+
60+
---
61+
name: zero_vl
62+
legalized: true
63+
regBankSelected: true
64+
tracksRegLiveness: true
65+
body: |
66+
bb.1:
67+
; CHECK-LABEL: name: zero_vl
68+
; CHECK: [[PseudoVMCLR_M_B1_:%[0-9]+]]:vr = PseudoVMCLR_M_B1 0, 0 /* e8 */
69+
; CHECK-NEXT: $v0 = COPY [[PseudoVMCLR_M_B1_]]
70+
; CHECK-NEXT: PseudoRET implicit $v0
71+
%0:gprb(s64) = G_CONSTANT i64 0
72+
%1:vrb(<vscale x 1 x s1>) = G_VMCLR_VL %0(s64)
73+
$v0 = COPY %1(<vscale x 1 x s1>)
74+
PseudoRET implicit $v0
75+
...
76+

0 commit comments

Comments
 (0)