Skip to content

Commit cd54d58

Browse files
authored
[AMDGPU][True16][CodeGen] add v_cndmask_t16 to hazardmask (#128912)
add v_cndmask_t16 to hazardmask
1 parent 3ac5d8d commit cd54d58

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2994,7 +2994,9 @@ bool GCNHazardRecognizer::fixVALUMaskWriteHazard(MachineInstr *MI) {
29942994
switch (I.getOpcode()) {
29952995
case AMDGPU::V_ADDC_U32_e32:
29962996
case AMDGPU::V_ADDC_U32_dpp:
2997+
case AMDGPU::V_CNDMASK_B16_t16_e32:
29972998
case AMDGPU::V_CNDMASK_B16_fake16_e32:
2999+
case AMDGPU::V_CNDMASK_B16_t16_dpp:
29983000
case AMDGPU::V_CNDMASK_B16_fake16_dpp:
29993001
case AMDGPU::V_CNDMASK_B32_e32:
30003002
case AMDGPU::V_CNDMASK_B32_dpp:
@@ -3010,7 +3012,9 @@ bool GCNHazardRecognizer::fixVALUMaskWriteHazard(MachineInstr *MI) {
30103012
HazardReg == AMDGPU::VCC_HI;
30113013
case AMDGPU::V_ADDC_U32_e64:
30123014
case AMDGPU::V_ADDC_U32_e64_dpp:
3015+
case AMDGPU::V_CNDMASK_B16_t16_e64:
30133016
case AMDGPU::V_CNDMASK_B16_fake16_e64:
3017+
case AMDGPU::V_CNDMASK_B16_t16_e64_dpp:
30143018
case AMDGPU::V_CNDMASK_B16_fake16_e64_dpp:
30153019
case AMDGPU::V_CNDMASK_B32_e64:
30163020
case AMDGPU::V_CNDMASK_B32_e64_dpp:
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
2+
# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -mattr=+wavefrontsize64,+real-true16 -verify-machineinstrs -run-pass post-RA-hazard-rec -o - %s | FileCheck -check-prefixes=GCN %s
3+
4+
---
5+
name: mask_hazard_cndmask_t16_dpp4
6+
body: |
7+
bb.0:
8+
; GCN-LABEL: name: mask_hazard_cndmask_t16_dpp4
9+
; GCN: $vgpr0_lo16 = V_CNDMASK_B16_t16_e64_dpp $vgpr0_lo16, 0, $vgpr1_lo16, 0, $vgpr2_lo16, $sgpr2_sgpr3, 0, 1, 15, 15, 1, implicit $exec
10+
; GCN-NEXT: $sgpr2_sgpr3 = S_CSELECT_B64 -1, 0, implicit $scc
11+
; GCN-NEXT: S_WAITCNT_DEPCTR 65534
12+
; GCN-NEXT: S_ENDPGM 0
13+
$vgpr0_lo16 = V_CNDMASK_B16_t16_e64_dpp $vgpr0_lo16, 0, $vgpr1_lo16, 0, $vgpr2_lo16, $sgpr2_sgpr3, 0, 1, 15, 15, 1, implicit $exec
14+
$sgpr2_sgpr3 = S_CSELECT_B64 -1, 0, implicit $scc
15+
S_ENDPGM 0
16+
...

0 commit comments

Comments
 (0)