| 
142 | 142 |     ret void  | 
143 | 143 |   }  | 
144 | 144 | 
 
  | 
 | 145 | +  define void @avl_is_last_instr() {  | 
 | 146 | +    ret void  | 
 | 147 | +  }  | 
 | 148 | + | 
145 | 149 |   declare i32 @llvm.vector.reduce.add.v4i32(<4 x i32>)  | 
146 | 150 | 
 
  | 
147 | 151 |   declare <vscale x 1 x i64> @llvm.riscv.vadd.nxv1i64.nxv1i64.i64(<vscale x 1 x i64>, <vscale x 1 x i64>, <vscale x 1 x i64>, i64) #1  | 
@@ -1099,3 +1103,31 @@ body: |  | 
1099 | 1103 |     renamable $v10m2 = PseudoVADD_VV_M2 undef renamable $v10m2, %v, %v, -1, 5, 0  | 
1100 | 1104 |     renamable $v8m2 = PseudoVADD_VV_M2 undef renamable $v8m2, killed renamable $v10m2, killed %v, %outvl:gprnox0, 5, 0  | 
1101 | 1105 |     PseudoRET implicit $v8m2  | 
 | 1106 | +...  | 
 | 1107 | +---  | 
 | 1108 | +name: avl_is_last_instr  | 
 | 1109 | +tracksRegLiveness: true  | 
 | 1110 | +body: |  | 
 | 1111 | +  ; CHECK-LABEL: name: avl_is_last_instr  | 
 | 1112 | +  ; CHECK: bb.0:  | 
 | 1113 | +  ; CHECK-NEXT:   successors: %bb.1(0x80000000)  | 
 | 1114 | +  ; CHECK-NEXT:   liveins: $x10  | 
 | 1115 | +  ; CHECK-NEXT: {{  $}}  | 
 | 1116 | +  ; CHECK-NEXT:   %avl:gprnox0 = COPY $x10  | 
 | 1117 | +  ; CHECK-NEXT:   [[COPY:%[0-9]+]]:gprnox0 = COPY %avl  | 
 | 1118 | +  ; CHECK-NEXT: {{  $}}  | 
 | 1119 | +  ; CHECK-NEXT: bb.1:  | 
 | 1120 | +  ; CHECK-NEXT:   dead %avl:gprnox0 = ADDI %avl, -1  | 
 | 1121 | +  ; CHECK-NEXT:   dead $x0 = PseudoVSETIVLI 1, 192 /* e8, m1, ta, ma */, implicit-def $vl, implicit-def $vtype  | 
 | 1122 | +  ; CHECK-NEXT:   $v8 = PseudoVMV_S_X undef renamable $v8, $x0, 1, 3 /* e8 */, implicit $vl, implicit $vtype  | 
 | 1123 | +  ; CHECK-NEXT:   dead $x0 = PseudoVSETVLI [[COPY]], 192 /* e8, m1, ta, ma */, implicit-def $vl, implicit-def $vtype  | 
 | 1124 | +  ; CHECK-NEXT:   $v8 = PseudoVADD_VV_M1 $noreg, $noreg, $noreg, $noreg, 3 /* e8 */, 3 /* ta, ma */, implicit $vl, implicit $vtype  | 
 | 1125 | +  bb.0:  | 
 | 1126 | +    liveins: $x10  | 
 | 1127 | +    %avl:gprnox0 = COPY $x10  | 
 | 1128 | +
  | 
 | 1129 | +  bb.1:  | 
 | 1130 | +    %vl:gprnox0 = PseudoVSETVLI %avl:gprnox0, 192, implicit-def dead $vl, implicit-def dead $vtype  | 
 | 1131 | +    %avl:gprnox0 = ADDI %avl:gprnox0, -1  | 
 | 1132 | +    $v8 = PseudoVMV_S_X undef renamable $v8, $x0, 1, 3  | 
 | 1133 | +    $v8 = PseudoVADD_VV_M1 $noreg, $noreg, $noreg, %vl:gprnox0, 3, 3  | 
0 commit comments