blob: 9a0d16c142801318b7146bbbf592c6a280d0c600 [file] [edit]
# REQUIRES: asserts
# RUN: llc -mtriple=amdgpu12.50 -run-pass=machine-scheduler -amdgpu-sched-strategy=coexec -debug-only=machine-scheduler %s -filetype=null 2>&1 | FileCheck %s
# CHECK: HWUI Resource Pressure:
# CHECK-DAG: VMEM: {{[0-9]+}} cycles, 10 instrs
# CHECK-DAG: DS: {{[0-9]+}} cycles, 4 instrs
# CHECK-DAG: DMA: {{[0-9]+}} cycles, 2 instrs
# CHECK-DAG: VALU(1c): {{[0-9]+}} cycles, 4 instrs
# CHECK-DAG: TRANS: {{[0-9]+}} cycles, 2 instrs
--- |
define void @test_flavor_classification() #0 { ret void }
attributes #0 = { "amdgpu-waves-per-eu"="1,1" }
...
---
name: test_flavor_classification
tracksRegLiveness: true
body: |
bb.0:
%0:vreg_64_align2 = IMPLICIT_DEF
%1:sgpr_128 = IMPLICIT_DEF
%2:vgpr_32 = IMPLICIT_DEF
%3:sgpr_256 = IMPLICIT_DEF
%4:vreg_256_align2 = IMPLICIT_DEF
%10:vgpr_32 = GLOBAL_LOAD_DWORD %0, 0, 0, implicit $exec
%11:vreg_64_align2 = GLOBAL_LOAD_DWORDX2 %0, 8, 0, implicit $exec
%12:vgpr_32 = BUFFER_LOAD_DWORD_OFFEN %2, %1, 0, 0, 0, 0, implicit $exec
%13:vreg_64_align2 = BUFFER_LOAD_DWORDX2_OFFEN %2, %1, 0, 0, 0, 0, implicit $exec
%14:vgpr_32 = FLAT_LOAD_DWORD %0, 0, 0, implicit $exec, implicit $flat_scr
%15:vreg_64_align2 = FLAT_LOAD_DWORDX2 %0, 0, 0, implicit $exec, implicit $flat_scr
GLOBAL_STORE_DWORD %0, %10, 0, 0, implicit $exec
GLOBAL_STORE_DWORDX2 %0, %11, 0, 0, implicit $exec
BUFFER_STORE_DWORD_OFFEN %10, %2, %1, 0, 0, 0, 0, implicit $exec
BUFFER_STORE_DWORDX2_OFFEN %11, %2, %1, 0, 0, 0, 0, implicit $exec
%20:vgpr_32 = DS_READ_B32 %2, 0, 0, implicit $m0, implicit $exec
%21:vreg_64_align2 = DS_READ_B64 %2, 0, 0, implicit $m0, implicit $exec
DS_WRITE_B32 %2, %10, 0, 0, implicit $m0, implicit $exec
DS_WRITE_B64 %2, %11, 0, 0, implicit $m0, implicit $exec
TENSOR_LOAD_TO_LDS_d2 %1, %3, 0, 0, implicit-def dead $tensorcnt, implicit $exec, implicit $tensorcnt
GLOBAL_LOAD_ASYNC_TO_LDS_B32 %2, %0, 0, 0, implicit-def $asynccnt, implicit $exec, implicit $asynccnt
%30:vreg_64_align2 = V_PK_ADD_F32 8, %11, 8, %11, 0, 0, 0, 0, 0, implicit $mode, implicit $exec
%31:vgpr_32 = V_PERM_B32_e64 %10, %12, 84148480, implicit $exec
%32:vreg_64_align2 = V_MIN_I64_e64 %11, %13, implicit $exec
%33:vreg_64_align2 = V_CVT_SCALEF32_PK8_FP8_F32_e64 %4, %10, implicit $mode, implicit $exec
%40:vgpr_32 = V_EXP_F32_e32 %10, implicit $exec, implicit $mode
%41:vgpr_32 = V_EXP_F32_e32 %12, implicit $exec, implicit $mode
S_ENDPGM 0, implicit %10, implicit %11, implicit %12, implicit %13, implicit %14, implicit %15, implicit %20, implicit %21, implicit %30, implicit %31, implicit %32, implicit %33, implicit %40, implicit %41
...