[llvm] e3d714f - [AMDGPU] Add gfx1150 test coverage in trans-forwarding-hazards.mir
Jay Foad via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 26 09:26:43 PDT 2023
Author: Jay Foad
Date: 2023-09-26T17:24:43+01:00
New Revision: e3d714f2cc060c3e92bbb846f06ba394f5c96f47
URL: https://github.com/llvm/llvm-project/commit/e3d714f2cc060c3e92bbb846f06ba394f5c96f47
DIFF: https://github.com/llvm/llvm-project/commit/e3d714f2cc060c3e92bbb846f06ba394f5c96f47.diff
LOG: [AMDGPU] Add gfx1150 test coverage in trans-forwarding-hazards.mir
This demonstrates that gfx1150 does not have FeatureVALUTransUseHazard.
Added:
Modified:
llvm/test/CodeGen/AMDGPU/trans-forwarding-hazards.mir
Removed:
################################################################################
diff --git a/llvm/test/CodeGen/AMDGPU/trans-forwarding-hazards.mir b/llvm/test/CodeGen/AMDGPU/trans-forwarding-hazards.mir
index 26f2b126d0f944a..13a7d5b4256a62d 100644
--- a/llvm/test/CodeGen/AMDGPU/trans-forwarding-hazards.mir
+++ b/llvm/test/CodeGen/AMDGPU/trans-forwarding-hazards.mir
@@ -1,16 +1,22 @@
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
-# RUN: llc -march=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize32 -verify-machineinstrs -run-pass post-RA-hazard-rec -o - %s | FileCheck -check-prefix=GCN %s
+# RUN: llc -march=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize32 -verify-machineinstrs -run-pass post-RA-hazard-rec -o - %s | FileCheck -check-prefixes=GCN,GFX11 %s
+# RUN: llc -march=amdgcn -mcpu=gfx1150 -mattr=+wavefrontsize32 -verify-machineinstrs -run-pass post-RA-hazard-rec -o - %s | FileCheck -check-prefixes=GCN,GFX1150 %s
---
name: trans_use_1_hazard
body: |
bb.0:
- ; GCN-LABEL: name: trans_use_1_hazard
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
- ; GCN-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
- ; GCN-NEXT: S_ENDPGM 0
+ ; GFX11-LABEL: name: trans_use_1_hazard
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
+ ; GFX11-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_ENDPGM 0
+ ; GFX1150-LABEL: name: trans_use_1_hazard
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: S_ENDPGM 0
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
$vgpr2 = V_MOV_B32_e32 0, implicit $exec
$vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
@@ -38,23 +44,39 @@ body: |
name: trans_use_2_hazard
body: |
bb.0:
- ; GCN-LABEL: name: trans_use_2_hazard
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
- ; GCN-NEXT: $sgpr0 = S_MOV_B32 0
- ; GCN-NEXT: $sgpr1 = S_MOV_B32 0
- ; GCN-NEXT: $sgpr2 = S_MOV_B32 0
- ; GCN-NEXT: $sgpr3 = S_MOV_B32 0
- ; GCN-NEXT: $sgpr4 = S_MOV_B32 0
- ; GCN-NEXT: $sgpr5 = S_MOV_B32 0
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: $sgpr6 = S_MOV_B32 0
- ; GCN-NEXT: $sgpr7 = S_MOV_B32 0
- ; GCN-NEXT: $sgpr8 = S_MOV_B32 0
- ; GCN-NEXT: $sgpr9 = S_MOV_B32 0
- ; GCN-NEXT: $sgpr10 = S_MOV_B32 0
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
- ; GCN-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
- ; GCN-NEXT: S_ENDPGM 0
+ ; GFX11-LABEL: name: trans_use_2_hazard
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX11-NEXT: $sgpr0 = S_MOV_B32 0
+ ; GFX11-NEXT: $sgpr1 = S_MOV_B32 0
+ ; GFX11-NEXT: $sgpr2 = S_MOV_B32 0
+ ; GFX11-NEXT: $sgpr3 = S_MOV_B32 0
+ ; GFX11-NEXT: $sgpr4 = S_MOV_B32 0
+ ; GFX11-NEXT: $sgpr5 = S_MOV_B32 0
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: $sgpr6 = S_MOV_B32 0
+ ; GFX11-NEXT: $sgpr7 = S_MOV_B32 0
+ ; GFX11-NEXT: $sgpr8 = S_MOV_B32 0
+ ; GFX11-NEXT: $sgpr9 = S_MOV_B32 0
+ ; GFX11-NEXT: $sgpr10 = S_MOV_B32 0
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
+ ; GFX11-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_ENDPGM 0
+ ; GFX1150-LABEL: name: trans_use_2_hazard
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $sgpr0 = S_MOV_B32 0
+ ; GFX1150-NEXT: $sgpr1 = S_MOV_B32 0
+ ; GFX1150-NEXT: $sgpr2 = S_MOV_B32 0
+ ; GFX1150-NEXT: $sgpr3 = S_MOV_B32 0
+ ; GFX1150-NEXT: $sgpr4 = S_MOV_B32 0
+ ; GFX1150-NEXT: $sgpr5 = S_MOV_B32 0
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $sgpr6 = S_MOV_B32 0
+ ; GFX1150-NEXT: $sgpr7 = S_MOV_B32 0
+ ; GFX1150-NEXT: $sgpr8 = S_MOV_B32 0
+ ; GFX1150-NEXT: $sgpr9 = S_MOV_B32 0
+ ; GFX1150-NEXT: $sgpr10 = S_MOV_B32 0
+ ; GFX1150-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: S_ENDPGM 0
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
$sgpr0 = S_MOV_B32 0
$sgpr1 = S_MOV_B32 0
@@ -76,16 +98,25 @@ body: |
name: trans_use_3_hazard
body: |
bb.0:
- ; GCN-LABEL: name: trans_use_3_hazard
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: $vgpr10 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: $vgpr11 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: $vgpr12 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: $vgpr13 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
- ; GCN-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
- ; GCN-NEXT: S_ENDPGM 0
+ ; GFX11-LABEL: name: trans_use_3_hazard
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: $vgpr10 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: $vgpr11 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: $vgpr12 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: $vgpr13 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
+ ; GFX11-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_ENDPGM 0
+ ; GFX1150-LABEL: name: trans_use_3_hazard
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr10 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr11 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr12 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr13 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: S_ENDPGM 0
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
$vgpr2 = V_MOV_B32_e32 0, implicit $exec
$vgpr10 = V_MOV_B32_e32 0, implicit $exec
@@ -169,13 +200,19 @@ body: |
name: trans_use_4_one_depctr_1
body: |
bb.0:
- ; GCN-LABEL: name: trans_use_4_one_depctr_1
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
- ; GCN-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
- ; GCN-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr1, $vgpr4, implicit $mode, implicit $exec
- ; GCN-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr6, implicit $mode, implicit $exec
- ; GCN-NEXT: S_ENDPGM 0
+ ; GFX11-LABEL: name: trans_use_4_one_depctr_1
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX11-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
+ ; GFX11-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr1, $vgpr4, implicit $mode, implicit $exec
+ ; GFX11-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr6, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_ENDPGM 0
+ ; GFX1150-LABEL: name: trans_use_4_one_depctr_1
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr1, $vgpr4, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr3, $vgpr6, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: S_ENDPGM 0
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
$vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
$vgpr5 = V_ADD_F32_e32 $vgpr1, $vgpr4, implicit $mode, implicit $exec
@@ -187,13 +224,19 @@ body: |
name: trans_use_4_one_depctr_2
body: |
bb.0:
- ; GCN-LABEL: name: trans_use_4_one_depctr_2
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
- ; GCN-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
- ; GCN-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec
- ; GCN-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr1, $vgpr6, implicit $mode, implicit $exec
- ; GCN-NEXT: S_ENDPGM 0
+ ; GFX11-LABEL: name: trans_use_4_one_depctr_2
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX11-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
+ ; GFX11-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec
+ ; GFX11-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr1, $vgpr6, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_ENDPGM 0
+ ; GFX1150-LABEL: name: trans_use_4_one_depctr_2
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $vgpr5 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $vgpr7 = V_ADD_F32_e32 $vgpr1, $vgpr6, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: S_ENDPGM 0
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
$vgpr3 = V_SQRT_F32_e32 $vgpr2, implicit $mode, implicit $exec
$vgpr5 = V_ADD_F32_e32 $vgpr3, $vgpr4, implicit $mode, implicit $exec
@@ -205,13 +248,19 @@ body: |
name: trans_use_4
body: |
bb.0:
- ; GCN-LABEL: name: trans_use_4
- ; GCN: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
- ; GCN-NEXT: $vgpr10 = V_SQRT_F32_e32 $vgpr11, implicit $mode, implicit $exec
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
- ; GCN-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
- ; GCN-NEXT: S_ENDPGM 0
+ ; GFX11-LABEL: name: trans_use_4
+ ; GFX11: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX11-NEXT: $vgpr10 = V_SQRT_F32_e32 $vgpr11, implicit $mode, implicit $exec
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
+ ; GFX11-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_ENDPGM 0
+ ; GFX1150-LABEL: name: trans_use_4
+ ; GFX1150: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $vgpr10 = V_SQRT_F32_e32 $vgpr11, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr3 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: S_ENDPGM 0
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
$vgpr10 = V_SQRT_F32_e32 $vgpr11, implicit $mode, implicit $exec
$vgpr2 = V_MOV_B32_e32 0, implicit $exec
@@ -222,28 +271,49 @@ body: |
---
name: trans_use_branching_1a
body: |
- ; GCN-LABEL: name: trans_use_branching_1a
- ; GCN: bb.0:
- ; GCN-NEXT: successors: %bb.2(0x80000000)
- ; GCN-NEXT: {{ $}}
- ; GCN-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
- ; GCN-NEXT: S_BRANCH %bb.2
- ; GCN-NEXT: {{ $}}
- ; GCN-NEXT: bb.1:
- ; GCN-NEXT: successors: %bb.2(0x80000000)
- ; GCN-NEXT: {{ $}}
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: $vgpr31 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: $vgpr32 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: $vgpr33 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: S_BRANCH %bb.2
- ; GCN-NEXT: {{ $}}
- ; GCN-NEXT: bb.2:
- ; GCN-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
- ; GCN-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
- ; GCN-NEXT: S_ENDPGM 0
+ ; GFX11-LABEL: name: trans_use_branching_1a
+ ; GFX11: bb.0:
+ ; GFX11-NEXT: successors: %bb.2(0x80000000)
+ ; GFX11-NEXT: {{ $}}
+ ; GFX11-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_BRANCH %bb.2
+ ; GFX11-NEXT: {{ $}}
+ ; GFX11-NEXT: bb.1:
+ ; GFX11-NEXT: successors: %bb.2(0x80000000)
+ ; GFX11-NEXT: {{ $}}
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: $vgpr31 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: $vgpr32 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: $vgpr33 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: S_BRANCH %bb.2
+ ; GFX11-NEXT: {{ $}}
+ ; GFX11-NEXT: bb.2:
+ ; GFX11-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
+ ; GFX11-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_ENDPGM 0
+ ; GFX1150-LABEL: name: trans_use_branching_1a
+ ; GFX1150: bb.0:
+ ; GFX1150-NEXT: successors: %bb.2(0x80000000)
+ ; GFX1150-NEXT: {{ $}}
+ ; GFX1150-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: S_BRANCH %bb.2
+ ; GFX1150-NEXT: {{ $}}
+ ; GFX1150-NEXT: bb.1:
+ ; GFX1150-NEXT: successors: %bb.2(0x80000000)
+ ; GFX1150-NEXT: {{ $}}
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr31 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr32 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr33 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: S_BRANCH %bb.2
+ ; GFX1150-NEXT: {{ $}}
+ ; GFX1150-NEXT: bb.2:
+ ; GFX1150-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: S_ENDPGM 0
bb.0:
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
S_BRANCH %bb.2
@@ -263,26 +333,45 @@ body: |
---
name: trans_use_branching_1b
body: |
- ; GCN-LABEL: name: trans_use_branching_1b
- ; GCN: bb.0:
- ; GCN-NEXT: successors: %bb.2(0x80000000)
- ; GCN-NEXT: {{ $}}
- ; GCN-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
- ; GCN-NEXT: S_BRANCH %bb.2
- ; GCN-NEXT: {{ $}}
- ; GCN-NEXT: bb.1:
- ; GCN-NEXT: successors: %bb.2(0x80000000)
- ; GCN-NEXT: {{ $}}
- ; GCN-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
- ; GCN-NEXT: S_BRANCH %bb.2
- ; GCN-NEXT: {{ $}}
- ; GCN-NEXT: bb.2:
- ; GCN-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
- ; GCN-NEXT: S_WAITCNT_DEPCTR 4095
- ; GCN-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
- ; GCN-NEXT: S_ENDPGM 0
+ ; GFX11-LABEL: name: trans_use_branching_1b
+ ; GFX11: bb.0:
+ ; GFX11-NEXT: successors: %bb.2(0x80000000)
+ ; GFX11-NEXT: {{ $}}
+ ; GFX11-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_BRANCH %bb.2
+ ; GFX11-NEXT: {{ $}}
+ ; GFX11-NEXT: bb.1:
+ ; GFX11-NEXT: successors: %bb.2(0x80000000)
+ ; GFX11-NEXT: {{ $}}
+ ; GFX11-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
+ ; GFX11-NEXT: S_BRANCH %bb.2
+ ; GFX11-NEXT: {{ $}}
+ ; GFX11-NEXT: bb.2:
+ ; GFX11-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX11-NEXT: S_WAITCNT_DEPCTR 4095
+ ; GFX11-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX11-NEXT: S_ENDPGM 0
+ ; GFX1150-LABEL: name: trans_use_branching_1b
+ ; GFX1150: bb.0:
+ ; GFX1150-NEXT: successors: %bb.2(0x80000000)
+ ; GFX1150-NEXT: {{ $}}
+ ; GFX1150-NEXT: $vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: S_BRANCH %bb.2
+ ; GFX1150-NEXT: {{ $}}
+ ; GFX1150-NEXT: bb.1:
+ ; GFX1150-NEXT: successors: %bb.2(0x80000000)
+ ; GFX1150-NEXT: {{ $}}
+ ; GFX1150-NEXT: $vgpr2 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr30 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: S_WAITCNT_DEPCTR 4095
+ ; GFX1150-NEXT: S_BRANCH %bb.2
+ ; GFX1150-NEXT: {{ $}}
+ ; GFX1150-NEXT: bb.2:
+ ; GFX1150-NEXT: $vgpr3 = V_MOV_B32_e32 0, implicit $exec
+ ; GFX1150-NEXT: $vgpr4 = V_ADD_F32_e32 $vgpr1, $vgpr2, implicit $mode, implicit $exec
+ ; GFX1150-NEXT: S_ENDPGM 0
bb.0:
$vgpr1 = V_SQRT_F32_e32 $vgpr0, implicit $mode, implicit $exec
S_BRANCH %bb.2
More information about the llvm-commits
mailing list