@@ -89,3 +89,41 @@ body: |
89
89
%passthru:vr = COPY $v8
90
90
%x:vr = PseudoVADD_VV_MF4 %passthru, $noreg, $noreg, 4, 4 /* e16 */, 0 /* tu, mu */
91
91
%y:vr = PseudoVMV_V_V_MF8 %passthru, %x, 4, 3 /* e8 */, 0 /* tu, mu */
92
+ ...
93
+ ---
94
+ name : diff_regclass
95
+ body : |
96
+ bb.0.entry:
97
+ liveins: $v8
98
+ ; CHECK-LABEL: name: diff_regclass
99
+ ; CHECK: liveins: $v8
100
+ ; CHECK-NEXT: {{ $}}
101
+ ; CHECK-NEXT: [[PseudoVMV_V_I_MF2_:%[0-9]+]]:vr = PseudoVMV_V_I_MF2 $noreg, 0, -1, 5 /* e32 */, 0 /* tu, mu */
102
+ ; CHECK-NEXT: [[PseudoVMV_V_V_MF2_:%[0-9]+]]:vrnov0 = PseudoVMV_V_V_MF2 $noreg, [[PseudoVMV_V_I_MF2_]], 0, 5 /* e32 */, 0 /* tu, mu */
103
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:vmv0 = COPY $v8
104
+ ; CHECK-NEXT: [[PseudoVXOR_VV_MF2_MASK:%[0-9]+]]:vrnov0 = PseudoVXOR_VV_MF2_MASK [[PseudoVMV_V_V_MF2_]], [[PseudoVMV_V_I_MF2_]], [[PseudoVMV_V_I_MF2_]], [[COPY]], 0, 5 /* e32 */, 0 /* tu, mu */
105
+ %0:vr = PseudoVMV_V_I_MF2 $noreg, 0, -1, 5 /* e32 */, 0 /* tu, mu */
106
+ %1:vrnov0 = PseudoVMV_V_V_MF2 $noreg, %0, 0, 5 /* e32 */, 0 /* tu, mu */
107
+ %4:vmv0 = COPY $v8
108
+ %3:vrnov0 = PseudoVXOR_VV_MF2_MASK %1, %0, %0, %4, 0, 5 /* e32 */, 0 /* tu, mu */
109
+ ...
110
+ ---
111
+ name : diff_regclass_passthru
112
+ body : |
113
+ bb.0.entry:
114
+ liveins: $v8
115
+ ; CHECK-LABEL: name: diff_regclass_passthru
116
+ ; CHECK: liveins: $v8
117
+ ; CHECK-NEXT: {{ $}}
118
+ ; CHECK-NEXT: [[COPY:%[0-9]+]]:vr = COPY $v8
119
+ ; CHECK-NEXT: [[PseudoVMV_V_I_MF2_:%[0-9]+]]:vr = PseudoVMV_V_I_MF2 $noreg, 0, 0, 5 /* e32 */, 0 /* tu, mu */
120
+ ; CHECK-NEXT: [[PseudoVMV_V_V_MF2_:%[0-9]+]]:vrnov0 = PseudoVMV_V_V_MF2 [[COPY]], killed [[PseudoVMV_V_I_MF2_]], 0, 5 /* e32 */, 0 /* tu, mu */
121
+ ; CHECK-NEXT: [[COPY1:%[0-9]+]]:gpr = COPY $x0
122
+ ; CHECK-NEXT: [[COPY2:%[0-9]+]]:vmv0 = COPY $v8
123
+ ; CHECK-NEXT: [[PseudoVLSE32_V_MF2_MASK:%[0-9]+]]:vrnov0 = PseudoVLSE32_V_MF2_MASK [[PseudoVMV_V_V_MF2_]], [[COPY1]], [[COPY1]], killed [[COPY2]], 0, 5 /* e32 */, 0 /* tu, mu */ :: (load unknown-size, align 4)
124
+ %0:vr = COPY $v8
125
+ %2:vr = PseudoVMV_V_I_MF2 $noreg, 0, -1, 5 /* e32 */, 0 /* tu, mu */
126
+ %3:vrnov0 = PseudoVMV_V_V_MF2 %0, killed %2, 0, 5 /* e32 */, 0 /* tu, mu */
127
+ %5:gpr = COPY $x0
128
+ %7:vmv0 = COPY $v8
129
+ %6:vrnov0 = PseudoVLSE32_V_MF2_MASK %3, %5, %5, killed %7, 0, 5 /* e32 */, 0 /* tu, mu */ :: (load unknown-size, align 4)
0 commit comments