[llvm] 2c52a18 - Precommit test for D149873
Jeffrey Byrnes via llvm-commits
llvm-commits at lists.llvm.org
Fri May 12 08:33:19 PDT 2023
Author: Jeffrey Byrnes
Date: 2023-05-12T08:32:47-07:00
New Revision: 2c52a1892505aeefd7735beafda2a410cde2c380
URL: https://github.com/llvm/llvm-project/commit/2c52a1892505aeefd7735beafda2a410cde2c380
DIFF: https://github.com/llvm/llvm-project/commit/2c52a1892505aeefd7735beafda2a410cde2c380.diff
LOG: Precommit test for D149873
Change-Id: I608f14ac3a504cc668f93f130a17dea3950fa554
Added:
Modified:
llvm/test/CodeGen/AMDGPU/accvgpr-copy.mir
Removed:
################################################################################
diff --git a/llvm/test/CodeGen/AMDGPU/accvgpr-copy.mir b/llvm/test/CodeGen/AMDGPU/accvgpr-copy.mir
index 1c0989852374..7607ec055e7d 100644
--- a/llvm/test/CodeGen/AMDGPU/accvgpr-copy.mir
+++ b/llvm/test/CodeGen/AMDGPU/accvgpr-copy.mir
@@ -29,6 +29,7 @@
define amdgpu_kernel void @a_to_a() #0 { ret void }
define amdgpu_kernel void @a2_to_a2() #0 { ret void }
define amdgpu_kernel void @a2_to_a2_kill() #0 { ret void }
+ define amdgpu_kernel void @a2_to_a2_implicit_defs() #0 { ret void }
define amdgpu_kernel void @a3_to_a3_nonoverlap_kill() #0 { ret void }
define amdgpu_kernel void @a3_to_a3_overlap_kill() #0 { ret void }
define amdgpu_kernel void @a4_to_a4() #0 { ret void }
@@ -887,6 +888,46 @@ body: |
S_ENDPGM 0, implicit $agpr1, implicit $agpr2, implicit $agpr3
...
+---
+name: a2_to_a2_implicit_defs
+tracksRegLiveness: true
+body: |
+ bb.0:
+ liveins: $agpr0_agpr1
+ ; GFX908-LABEL: name: a2_to_a2_implicit_defs
+ ; GFX908: liveins: $agpr0_agpr1
+ ; GFX908-NEXT: {{ $}}
+ ; GFX908-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr1, implicit $exec, implicit $agpr0_agpr1
+ ; GFX908-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr1, implicit $exec, implicit-def $agpr1_agpr2
+ ; GFX908-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $agpr0_agpr1
+ ; GFX908-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit $exec, implicit-def $agpr1_agpr2
+ ; GFX908-NEXT: $agpr4 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit-def $agpr3_agpr4, implicit $agpr1_agpr2
+ ; GFX908-NEXT: $agpr3 = V_ACCVGPR_WRITE_B32_e64 $vgpr0, implicit $exec, implicit killed $agpr1_agpr2, implicit $exec
+ ; GFX90A-LABEL: name: a2_to_a2_implicit_defs
+ ; GFX90A: liveins: $agpr0_agpr1
+ ; GFX90A-NEXT: {{ $}}
+ ; GFX90A-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr1, implicit $exec, implicit $agpr0_agpr1
+ ; GFX90A-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr1, implicit $exec, implicit-def $agpr1_agpr2
+ ; GFX90A-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $agpr0_agpr1
+ ; GFX90A-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit $exec, implicit-def $agpr1_agpr2
+ ; GFX90A-NEXT: $agpr4 = V_ACCVGPR_MOV_B32 $agpr2, implicit $exec, implicit-def $agpr3_agpr4, implicit $agpr1_agpr2
+ ; GFX90A-NEXT: $agpr3 = V_ACCVGPR_MOV_B32 $agpr1, implicit $exec, implicit killed $agpr1_agpr2, implicit $exec
+ ; GFX940-LABEL: name: a2_to_a2_implicit_defs
+ ; GFX940: liveins: $agpr0_agpr1
+ ; GFX940-NEXT: {{ $}}
+ ; GFX940-NEXT: $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr1, implicit $exec, implicit $agpr0_agpr1
+ ; GFX940-NEXT: $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr1, implicit $exec, implicit-def $agpr1_agpr2
+ ; GFX940-NEXT: $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $agpr0_agpr1
+ ; GFX940-NEXT: $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit $exec, implicit-def $agpr1_agpr2
+ ; GFX940-NEXT: $agpr4 = V_ACCVGPR_MOV_B32 $agpr2, implicit $exec, implicit-def $agpr3_agpr4, implicit $agpr1_agpr2
+ ; GFX940-NEXT: $agpr3 = V_ACCVGPR_MOV_B32 $agpr1, implicit $exec, implicit killed $agpr1_agpr2, implicit $exec
+ $vgpr1 = V_ACCVGPR_READ_B32_e64 $agpr1, implicit $exec, implicit $agpr0_agpr1
+ $agpr2 = V_ACCVGPR_WRITE_B32_e64 $vgpr1, implicit $exec, implicit-def $agpr1_agpr2
+ $vgpr0 = V_ACCVGPR_READ_B32_e64 $agpr0, implicit $exec, implicit $agpr0_agpr1
+ $agpr1 = V_ACCVGPR_WRITE_B32_e64 killed $vgpr0, implicit $exec, implicit $exec, implicit-def $agpr1_agpr2
+ $agpr3_agpr4 = COPY killed $agpr1_agpr2, implicit $exec
+...
+
---
name: a3_to_a3_nonoverlap_kill
tracksRegLiveness: true
More information about the llvm-commits
mailing list