llvm-reduce: Fix missing undef flags in some tests
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Tue, 13 Sep 2022 20:50:41 +0000 (16:50 -0400)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Tue, 13 Sep 2022 22:10:56 +0000 (18:10 -0400)
These caused failures when LiveIntervals is used by the verifier. Also
fix some other errors that appear with subranges enabled.

llvm/test/tools/llvm-reduce/mir/reduce-register-defs.mir

index ff039ee..6fb9d5f 100644 (file)
@@ -32,7 +32,8 @@ body:             |
 # ALL-LABEL: name: subreg_def
 # CHECK-INTERESTINGNESS0: %super.sub0
 
-# RESULT0: undef %super.sub1:vreg_64 = IMPLICIT_DEF
+# RESULT0: undef %super.sub0:vreg_64 = IMPLICIT_DEF
+# RESULT0-NEXT: %super.sub1:vreg_64 = IMPLICIT_DEF
 ---
 name: subreg_def
 tracksRegLiveness: true
@@ -42,7 +43,8 @@ body:             |
 
     %vgpr0:vgpr_32 = COPY $vgpr0
     %vgpr1:vgpr_32 = COPY $vgpr1
-    undef %super.sub1:vreg_64 = V_ADD_F32_e32 %vgpr0, %vgpr1, implicit $mode, implicit $exec
+    undef %super.sub0:vreg_64 = IMPLICIT_DEF
+    %super.sub1:vreg_64 = V_ADD_F32_e32 %vgpr0, %vgpr1, implicit $mode, implicit $exec
 
     S_NOP 0, implicit %super.sub0
     S_ENDPGM 0, implicit %super.sub0
@@ -92,8 +94,8 @@ body:             |
 # ALL-LABEL: name: multi_def_subreg
 # CHECK-INTERESTINGNESS0: S_NOP 4
 
-# RESULT0: %redef.sub0:vreg_64 = IMPLICIT_DEF
-# RESULT0: %redef.sub1:vreg_64 = IMPLICIT_DEF
+# RESULT0: undef %redef.sub0:vreg_64 = IMPLICIT_DEF
+# RESULT0: undef %redef.sub1:vreg_64 = IMPLICIT_DEF
 ---
 name: multi_def_subreg
 tracksRegLiveness: true
@@ -103,7 +105,7 @@ body:             |
 
     %vgpr0:vgpr_32 = COPY $vgpr0
     %vgpr1:vgpr_32 = COPY $vgpr1
-    S_NOP 3, implicit-def %redef.sub0:vreg_64, implicit-def %redef.sub1:vreg_64
+    S_NOP 3, undef implicit-def %redef.sub0:vreg_64, undef implicit-def %redef.sub1:vreg_64
     S_NOP 4, implicit %redef
 ...
 
@@ -111,7 +113,7 @@ body:             |
 # CHECK-INTERESTINGNESS0: S_NOP 4
 
 # RESULT0-NOT: implicit-def %redef
-# RESULT0: %redef.sub0:vreg_64 = IMPLICIT_DEF
+# RESULT0: undef %redef.sub0:vreg_64 = IMPLICIT_DEF
 # RESULT0-NOT: implicit-def %redef
 ---
 name: multi_def_subreg_same_subreg
@@ -122,14 +124,14 @@ body:             |
 
     %vgpr0:vgpr_32 = COPY $vgpr0
     %vgpr1:vgpr_32 = COPY $vgpr1
-    S_NOP 3, implicit-def %redef.sub0:vreg_64, implicit-def %redef.sub0:vreg_64
+    S_NOP 3, undef implicit-def %redef.sub0:vreg_64, undef implicit-def %redef.sub0:vreg_64
     S_NOP 4, implicit %redef
 ...
 
 # ALL-LABEL: name: tied_def
 # CHECK-INTERESTINGNESS0: V_MAC_F32
 
-# RESULT0: %mac0:vgpr_32 = V_MAC_F32_e32 %vgpr0, %vgpr1, %mac0, implicit $mode, implicit $exec
+# RESULT0: %mac0:vgpr_32 = V_MAC_F32_e32 %vgpr0, %vgpr1, undef %mac0, implicit $mode, implicit $exec
 # RESULT0: %mac1:vgpr_32 = IMPLICIT_DEF
 ---
 name: tied_def
@@ -141,7 +143,7 @@ body:             |
     S_WAITCNT 0
     %vgpr0:vgpr_32 = COPY $vgpr0
     %vgpr1:vgpr_32 = COPY $vgpr1
-    %mac0:vgpr_32 = V_MAC_F32_e32 %vgpr0, %vgpr1, %mac0, implicit $mode, implicit $exec
+    %mac0:vgpr_32 = V_MAC_F32_e32 %vgpr0, %vgpr1, undef %mac0, implicit $mode, implicit $exec
     %mac1:vgpr_32 = V_MAC_F32_e32 %vgpr1, %vgpr0, %mac0, implicit $mode, implicit $exec
     S_ENDPGM 0, implicit %mac0, implicit %mac1
 ...