Based on - https://github.com/llvm/llvm-project/pull/156079 and - https://github.com/llvm/llvm-project/pull/171520 See those PRs for background. Provides a compatibility mode option `--amdgpu-next-use-analysis-compatibility-mode` that produces results that match either PR #156079 (`compute`) or PR #171520 (`graphics`). Co-authored-by: alex-t <atimofee@amd.com> Co-authored-by: Konstantina Mitropoulou <KonstantinaMitropoulou@amd.com> --------- Co-authored-by: Konstantina Mitropoulou <KonstantinaMitropoulou@amd.com>
1366 lines
63 KiB
YAML
1366 lines
63 KiB
YAML
# RUN: llc -mtriple=amdgcn -mcpu=gfx1200 \
|
|
# RUN: -run-pass=amdgpu-next-use-printer \
|
|
# RUN: -amdgpu-next-use-analysis-config=graphics \
|
|
# RUN: -amdgpu-next-use-analysis-dump-distance-as-json=- \
|
|
# RUN: -amdgpu-next-use-analysis-dump-distance-verbose \
|
|
# RUN: -filetype=null \
|
|
# RUN: %s | FileCheck --check-prefix=CHECK-GX-JSON %s
|
|
|
|
# RUN: llc -mtriple=amdgcn -mcpu=gfx1200 \
|
|
# RUN: -run-pass=amdgpu-next-use-printer \
|
|
# RUN: -amdgpu-next-use-analysis-config=compute \
|
|
# RUN: -amdgpu-next-use-analysis-dump-distance-as-json=- \
|
|
# RUN: -amdgpu-next-use-analysis-dump-distance-verbose \
|
|
# RUN: -filetype=null \
|
|
# RUN: %s | FileCheck --check-prefix=CHECK-CP-JSON %s
|
|
|
|
# RUN: llc -mtriple=amdgcn -mcpu=gfx1200 \
|
|
# RUN: "-passes=require<amdgpu-next-use-analysis>,print<amdgpu-next-use-analysis>" \
|
|
# RUN: -amdgpu-next-use-analysis-config=compute \
|
|
# RUN: -amdgpu-next-use-analysis-dump-distance-as-json=- \
|
|
# RUN: -amdgpu-next-use-analysis-dump-distance-verbose \
|
|
# RUN: -filetype=null \
|
|
# RUN: %s | FileCheck --check-prefix=CHECK-CP-JSON %s
|
|
|
|
--- |
|
|
define amdgpu_ps void @test4(ptr addrspace(3) %p) {
|
|
ret void
|
|
}
|
|
...
|
|
---
|
|
name: test4
|
|
tracksRegLiveness: true
|
|
body: |
|
|
bb.0:
|
|
successors: %bb.1(0x80000000)
|
|
liveins: $vgpr0, $vgpr1
|
|
|
|
%0:vgpr_32 = COPY $vgpr1
|
|
%1:vgpr_32 = COPY $vgpr0
|
|
%2:vgpr_32 = V_MOV_B32_e32 100, implicit $exec
|
|
%3:sreg_32 = S_MOV_B32 0
|
|
|
|
bb.1:
|
|
successors: %bb.1(0x40000000), %bb.2(0x40000000)
|
|
|
|
%4:sreg_32 = PHI %3, %bb.0, %5, %bb.1
|
|
%6:vgpr_32 = PHI %1, %bb.0, %7, %bb.1
|
|
%8:vgpr_32 = PHI %2, %bb.0, %9, %bb.1
|
|
%10:sreg_32 = PHI %3, %bb.0, %11, %bb.1
|
|
%12:vgpr_32 = DS_READ_U8_gfx9 %6, 0, 0, implicit $exec :: (load (s8) from %ir.p, addrspace 3)
|
|
%13:vgpr_32 = DS_READ_U8_gfx9 %6, 1, 0, implicit $exec :: (load (s8) from %ir.p + 1, addrspace 3)
|
|
%14:vgpr_32 = DS_READ_U8_gfx9 %6, 2, 0, implicit $exec :: (load (s8) from %ir.p + 2, addrspace 3)
|
|
%15:vgpr_32 = DS_READ_U8_gfx9 %6, 3, 0, implicit $exec :: (load (s8) from %ir.p + 3, addrspace 3)
|
|
%16:vgpr_32 = V_LSHL_OR_B32_e64 %13, 8, %12, implicit $exec
|
|
%17:vgpr_32 = V_LSHL_OR_B32_e64 %15, 8, %14, implicit $exec
|
|
%18:vgpr_32 = V_LSHL_OR_B32_e64 %17, 16, %16, implicit $exec
|
|
%9:vgpr_32 = V_ADD_U32_e64 %10, %18, 0, implicit $exec
|
|
%11:sreg_32 = S_ADD_I32 %10, 1, implicit-def dead $scc
|
|
%7:vgpr_32 = V_ADD_U32_e64 4, %6, 0, implicit $exec
|
|
%19:sreg_32 = V_CMP_GE_U32_e64 %11, %0, implicit $exec
|
|
%5:sreg_32 = SI_IF_BREAK %19, %4, implicit-def dead $scc
|
|
SI_LOOP %5, %bb.1, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
|
|
S_BRANCH %bb.2
|
|
|
|
bb.2:
|
|
SI_END_CF %5, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
|
|
DS_WRITE_B32_gfx9 %1, %8, 0, 0, implicit $exec :: (store (s32) into %ir.p, addrspace 3)
|
|
S_ENDPGM 0
|
|
...
|
|
|
|
|
|
# CHECK-GX-JSON: {
|
|
# CHECK-GX-JSON-NEXT: "next-use-analysis": {
|
|
# CHECK-GX-JSON-NEXT: "furthest-distances": {
|
|
# CHECK-GX-JSON-NEXT: "bb.0": [
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%0:vgpr_32 = COPY $vgpr1",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {},
|
|
# CHECK-GX-JSON-NEXT: "furthest": {},
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {}
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%1:vgpr_32 = COPY $vgpr0",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 17
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%0",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 17
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%0",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 17
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%2:vgpr_32 = V_MOV_B32_e32 100, implicit $exec",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 16
|
|
# CHECK-GX-JSON-DAG: "%1": 3
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%0",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 16
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%0",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 16
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%3:sreg_32 = S_MOV_B32 0",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 15
|
|
# CHECK-GX-JSON-DAG: "%1": 2
|
|
# CHECK-GX-JSON-DAG: "%2": 3
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%0",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 15
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%0",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 15
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: }
|
|
# CHECK-GX-JSON-NEXT: ],
|
|
# CHECK-GX-JSON-NEXT: "bb.1": [
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%4:sreg_32 = PHI %3, %bb.0, %5, %bb.1",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 14
|
|
# CHECK-GX-JSON-DAG: "%1": 1
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%0",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 14
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%0",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 14
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%6:vgpr_32 = PHI %1, %bb.0, %7, %bb.1",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 13
|
|
# CHECK-GX-JSON-DAG: "%1": 0
|
|
# CHECK-GX-JSON-DAG: "%4": 14
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%4",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 14
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%4",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 14
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%8:vgpr_32 = PHI %2, %bb.0, %9, %bb.1",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 12
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 13
|
|
# CHECK-GX-JSON-DAG: "%6": 2
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%10:sreg_32 = PHI %3, %bb.0, %11, %bb.1",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 11
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 12
|
|
# CHECK-GX-JSON-DAG: "%6": 1
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%12:vgpr_32 = DS_READ_U8_gfx9 %6, 0, 0, implicit $exec :: (load (s8) from %ir.p, addrspace 3)",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 10
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 11
|
|
# CHECK-GX-JSON-DAG: "%6": 0
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%10": 7
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%13:vgpr_32 = DS_READ_U8_gfx9 %6, 1, 0, implicit $exec :: (load (s8) from %ir.p + 1, addrspace 3)",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 9
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 10
|
|
# CHECK-GX-JSON-DAG: "%6": 0
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%10": 6
|
|
# CHECK-GX-JSON-DAG: "%12": 3
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%14:vgpr_32 = DS_READ_U8_gfx9 %6, 2, 0, implicit $exec :: (load (s8) from %ir.p + 2, addrspace 3)",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 8
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 9
|
|
# CHECK-GX-JSON-DAG: "%6": 0
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%10": 5
|
|
# CHECK-GX-JSON-DAG: "%12": 2
|
|
# CHECK-GX-JSON-DAG: "%13": 2
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%15:vgpr_32 = DS_READ_U8_gfx9 %6, 3, 0, implicit $exec :: (load (s8) from %ir.p + 3, addrspace 3)",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 7
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 8
|
|
# CHECK-GX-JSON-DAG: "%6": 0
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%10": 4
|
|
# CHECK-GX-JSON-DAG: "%12": 1
|
|
# CHECK-GX-JSON-DAG: "%13": 1
|
|
# CHECK-GX-JSON-DAG: "%14": 2
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%16:vgpr_32 = V_LSHL_OR_B32_e64 %13, 8, %12, implicit $exec",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 6
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 7
|
|
# CHECK-GX-JSON-DAG: "%6": 5
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%10": 3
|
|
# CHECK-GX-JSON-DAG: "%12": 0
|
|
# CHECK-GX-JSON-DAG: "%13": 0
|
|
# CHECK-GX-JSON-DAG: "%14": 1
|
|
# CHECK-GX-JSON-DAG: "%15": 1
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%17:vgpr_32 = V_LSHL_OR_B32_e64 %15, 8, %14, implicit $exec",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 5
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 6
|
|
# CHECK-GX-JSON-DAG: "%6": 4
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%10": 2
|
|
# CHECK-GX-JSON-DAG: "%14": 0
|
|
# CHECK-GX-JSON-DAG: "%15": 0
|
|
# CHECK-GX-JSON-DAG: "%16": 1
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%18:vgpr_32 = V_LSHL_OR_B32_e64 %17, 16, %16, implicit $exec",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 4
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 5
|
|
# CHECK-GX-JSON-DAG: "%6": 3
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%10": 1
|
|
# CHECK-GX-JSON-DAG: "%16": 0
|
|
# CHECK-GX-JSON-DAG: "%17": 0
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%9:vgpr_32 = V_ADD_U32_e64 %10, %18, 0, implicit $exec",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 3
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 4
|
|
# CHECK-GX-JSON-DAG: "%6": 2
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%10": 0
|
|
# CHECK-GX-JSON-DAG: "%18": 0
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%11:sreg_32 = S_ADD_I32 %10, 1, implicit-def dead $scc",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 2
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 3
|
|
# CHECK-GX-JSON-DAG: "%6": 1
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%10": 0
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%7:vgpr_32 = V_ADD_U32_e64 4, %6, 0, implicit $exec",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 1
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 2
|
|
# CHECK-GX-JSON-DAG: "%6": 0
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%11": 1
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%19:sreg_32 = V_CMP_GE_U32_e64 %11, %0, implicit $exec",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%0": 0
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 1
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%11": 0
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "%5:sreg_32 = SI_IF_BREAK %19, %4, implicit-def dead $scc",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%4": 0
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON-DAG: "%19": 0
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "SI_LOOP %5, %bb.1, implicit-def dead $exec, implicit-def dead $scc, implicit $exec",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%5": 0
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "S_BRANCH %bb.2",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%1": 2306
|
|
# CHECK-GX-JSON-DAG: "%5": 2305
|
|
# CHECK-GX-JSON-DAG: "%8": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 2306
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: }
|
|
# CHECK-GX-JSON-NEXT: ],
|
|
# CHECK-GX-JSON-NEXT: "bb.2": [
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "SI_END_CF %5, implicit-def dead $exec, implicit-def dead $scc, implicit $exec",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%1": 1
|
|
# CHECK-GX-JSON-DAG: "%5": 0
|
|
# CHECK-GX-JSON-DAG: "%8": 1
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 1
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 1
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "DS_WRITE_B32_gfx9 %1, %8, 0, 0, implicit $exec :: (store (s32) into %ir.p, addrspace 3)",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {
|
|
# CHECK-GX-JSON-DAG: "%1": 0
|
|
# CHECK-GX-JSON-DAG: "%8": 0
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 0
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-GX-JSON-DAG: "register": "%1",
|
|
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-GX-JSON-DAG: "distance": 0
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: {
|
|
# CHECK-GX-JSON-NEXT: "instr": "S_ENDPGM 0",
|
|
# CHECK-GX-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "distances": {},
|
|
# CHECK-GX-JSON-NEXT: "furthest": {},
|
|
# CHECK-GX-JSON-NEXT: "furthest-subreg": {}
|
|
# CHECK-GX-JSON-NEXT: }
|
|
# CHECK-GX-JSON-NEXT: ]
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-NEXT: "distance-from-def-to-closest-use": {
|
|
# CHECK-GX-JSON-DAG: "%0": 18,
|
|
# CHECK-GX-JSON-DAG: "%1": 4,
|
|
# CHECK-GX-JSON-DAG: "%2": 4,
|
|
# CHECK-GX-JSON-DAG: "%3": 1,
|
|
# CHECK-GX-JSON-DAG: "%4": 15,
|
|
# CHECK-GX-JSON-DAG: "%6": 3,
|
|
# CHECK-GX-JSON-DAG: "%8": 2306,
|
|
# CHECK-GX-JSON-DAG: "%10": 8,
|
|
# CHECK-GX-JSON-DAG: "%12": 4,
|
|
# CHECK-GX-JSON-DAG: "%13": 3,
|
|
# CHECK-GX-JSON-DAG: "%14": 3,
|
|
# CHECK-GX-JSON-DAG: "%15": 2,
|
|
# CHECK-GX-JSON-DAG: "%16": 2,
|
|
# CHECK-GX-JSON-DAG: "%17": 1,
|
|
# CHECK-GX-JSON-DAG: "%18": 1,
|
|
# CHECK-GX-JSON-DAG: "%9": "<unreachable>",
|
|
# CHECK-GX-JSON-DAG: "%11": 2,
|
|
# CHECK-GX-JSON-DAG: "%7": "<unreachable>",
|
|
# CHECK-GX-JSON-DAG: "%19": 1,
|
|
# CHECK-GX-JSON-DAG: "%5": 1
|
|
# CHECK-GX-JSON: },
|
|
# CHECK-GX-JSON-NEXT: "paths": [
|
|
# CHECK-GX-JSON: ],
|
|
# CHECK-GX-JSON-NEXT: "metrics": {
|
|
# CHECK-GX-JSON-NEXT: "distance-cache": {
|
|
# CHECK-GX-JSON-NEXT: "hits": {{[0-9]+}},
|
|
# CHECK-GX-JSON-NEXT: "misses": {{[0-9]+}}
|
|
# CHECK-GX-JSON-NEXT: }
|
|
# CHECK-GX-JSON-NEXT: }
|
|
# CHECK-GX-JSON-NEXT: },
|
|
# CHECK-GX-JSON-DAG: "time.amdgpu-next-use-analysis-json.json.wall": {{[0-9.e+-]+}},
|
|
# CHECK-GX-JSON-DAG: "time.amdgpu-next-use-analysis-json.json.user": {{[0-9.e+-]+}},
|
|
# CHECK-GX-JSON-DAG: "time.amdgpu-next-use-analysis-json.json.sys": {{[0-9.e+-]+}}
|
|
# CHECK-GX-JSON: }
|
|
# CHECK-CP-JSON: {
|
|
# CHECK-CP-JSON-NEXT: "next-use-analysis": {
|
|
# CHECK-CP-JSON-NEXT: "furthest-distances": {
|
|
# CHECK-CP-JSON-NEXT: "bb.0": [
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%0:vgpr_32 = COPY $vgpr1",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {},
|
|
# CHECK-CP-JSON-NEXT: "furthest": {},
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {}
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%1:vgpr_32 = COPY $vgpr0",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 2
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%0",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 2
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%0",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 2
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%2:vgpr_32 = V_MOV_B32_e32 100, implicit $exec",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 1
|
|
# CHECK-CP-JSON-DAG: "%1": 1
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%0",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%0",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%3:sreg_32 = S_MOV_B32 0",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 0
|
|
# CHECK-CP-JSON-DAG: "%1": 0
|
|
# CHECK-CP-JSON-DAG: "%2": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%0",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%0",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 0
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: }
|
|
# CHECK-CP-JSON-NEXT: ],
|
|
# CHECK-CP-JSON-NEXT: "bb.1": [
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%4:sreg_32 = PHI %3, %bb.0, %5, %bb.1",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 10
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%6:vgpr_32 = PHI %1, %bb.0, %7, %bb.1",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 10
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 11
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%8:vgpr_32 = PHI %2, %bb.0, %9, %bb.1",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 10
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 11
|
|
# CHECK-CP-JSON-DAG: "%6": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%10:sreg_32 = PHI %3, %bb.0, %11, %bb.1",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 10
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 11
|
|
# CHECK-CP-JSON-DAG: "%6": 0
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%12:vgpr_32 = DS_READ_U8_gfx9 %6, 0, 0, implicit $exec :: (load (s8) from %ir.p, addrspace 3)",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 10
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 11
|
|
# CHECK-CP-JSON-DAG: "%6": 0
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%10": 7
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%13:vgpr_32 = DS_READ_U8_gfx9 %6, 1, 0, implicit $exec :: (load (s8) from %ir.p + 1, addrspace 3)",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 9
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 10
|
|
# CHECK-CP-JSON-DAG: "%6": 0
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%10": 6
|
|
# CHECK-CP-JSON-DAG: "%12": 3
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%14:vgpr_32 = DS_READ_U8_gfx9 %6, 2, 0, implicit $exec :: (load (s8) from %ir.p + 2, addrspace 3)",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 8
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 9
|
|
# CHECK-CP-JSON-DAG: "%6": 0
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%10": 5
|
|
# CHECK-CP-JSON-DAG: "%12": 2
|
|
# CHECK-CP-JSON-DAG: "%13": 2
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%15:vgpr_32 = DS_READ_U8_gfx9 %6, 3, 0, implicit $exec :: (load (s8) from %ir.p + 3, addrspace 3)",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 7
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 8
|
|
# CHECK-CP-JSON-DAG: "%6": 0
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%10": 4
|
|
# CHECK-CP-JSON-DAG: "%12": 1
|
|
# CHECK-CP-JSON-DAG: "%13": 1
|
|
# CHECK-CP-JSON-DAG: "%14": 2
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%16:vgpr_32 = V_LSHL_OR_B32_e64 %13, 8, %12, implicit $exec",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 6
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 7
|
|
# CHECK-CP-JSON-DAG: "%6": 5
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%10": 3
|
|
# CHECK-CP-JSON-DAG: "%12": 0
|
|
# CHECK-CP-JSON-DAG: "%13": 0
|
|
# CHECK-CP-JSON-DAG: "%14": 1
|
|
# CHECK-CP-JSON-DAG: "%15": 1
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%17:vgpr_32 = V_LSHL_OR_B32_e64 %15, 8, %14, implicit $exec",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 5
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 6
|
|
# CHECK-CP-JSON-DAG: "%6": 4
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%10": 2
|
|
# CHECK-CP-JSON-DAG: "%14": 0
|
|
# CHECK-CP-JSON-DAG: "%15": 0
|
|
# CHECK-CP-JSON-DAG: "%16": 1
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%18:vgpr_32 = V_LSHL_OR_B32_e64 %17, 16, %16, implicit $exec",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 4
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 5
|
|
# CHECK-CP-JSON-DAG: "%6": 3
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%10": 1
|
|
# CHECK-CP-JSON-DAG: "%16": 0
|
|
# CHECK-CP-JSON-DAG: "%17": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%9:vgpr_32 = V_ADD_U32_e64 %10, %18, 0, implicit $exec",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 3
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 4
|
|
# CHECK-CP-JSON-DAG: "%6": 2
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%10": 0
|
|
# CHECK-CP-JSON-DAG: "%18": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%11:sreg_32 = S_ADD_I32 %10, 1, implicit-def dead $scc",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 2
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 3
|
|
# CHECK-CP-JSON-DAG: "%6": 1
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%9": 5
|
|
# CHECK-CP-JSON-DAG: "%10": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%7:vgpr_32 = V_ADD_U32_e64 4, %6, 0, implicit $exec",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 1
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 2
|
|
# CHECK-CP-JSON-DAG: "%6": 0
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%9": 4
|
|
# CHECK-CP-JSON-DAG: "%11": 1
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%19:sreg_32 = V_CMP_GE_U32_e64 %11, %0, implicit $exec",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 0
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 1
|
|
# CHECK-CP-JSON-DAG: "%7": 3
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%9": 3
|
|
# CHECK-CP-JSON-DAG: "%11": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "%5:sreg_32 = SI_IF_BREAK %19, %4, implicit-def dead $scc",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 27
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%4": 0
|
|
# CHECK-CP-JSON-DAG: "%7": 2
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%9": 2
|
|
# CHECK-CP-JSON-DAG: "%11": 2
|
|
# CHECK-CP-JSON-DAG: "%19": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "SI_LOOP %5, %bb.1, implicit-def dead $exec, implicit-def dead $scc, implicit $exec",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 26
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%5": 0
|
|
# CHECK-CP-JSON-DAG: "%7": 1
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%9": 1
|
|
# CHECK-CP-JSON-DAG: "%11": 1
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.2",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%0": 25
|
|
# CHECK-CP-JSON-DAG: "%1": 1794
|
|
# CHECK-CP-JSON-DAG: "%5": 0
|
|
# CHECK-CP-JSON-DAG: "%7": 0
|
|
# CHECK-CP-JSON-DAG: "%8": 1794
|
|
# CHECK-CP-JSON-DAG: "%9": 0
|
|
# CHECK-CP-JSON-DAG: "%11": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1794
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: }
|
|
# CHECK-CP-JSON-NEXT: ],
|
|
# CHECK-CP-JSON-NEXT: "bb.2": [
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "SI_END_CF %5, implicit-def dead $exec, implicit-def dead $scc, implicit $exec",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%1": 1
|
|
# CHECK-CP-JSON-DAG: "%5": 0
|
|
# CHECK-CP-JSON-DAG: "%8": 1
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 1
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "DS_WRITE_B32_gfx9 %1, %8, 0, 0, implicit $exec :: (store (s32) into %ir.p, addrspace 3)",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {
|
|
# CHECK-CP-JSON-DAG: "%1": 0
|
|
# CHECK-CP-JSON-DAG: "%8": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 0
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
|
|
# CHECK-CP-JSON-DAG: "register": "%1",
|
|
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
|
|
# CHECK-CP-JSON-DAG: "distance": 0
|
|
# CHECK-CP-JSON: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: {
|
|
# CHECK-CP-JSON-NEXT: "instr": "S_ENDPGM 0",
|
|
# CHECK-CP-JSON-NEXT: "id": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "distances": {},
|
|
# CHECK-CP-JSON-NEXT: "furthest": {},
|
|
# CHECK-CP-JSON-NEXT: "furthest-subreg": {}
|
|
# CHECK-CP-JSON-NEXT: }
|
|
# CHECK-CP-JSON-NEXT: ]
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-NEXT: "distance-from-def-to-closest-use": {
|
|
# CHECK-CP-JSON-DAG: "%0": 3,
|
|
# CHECK-CP-JSON-DAG: "%1": 2,
|
|
# CHECK-CP-JSON-DAG: "%2": 1,
|
|
# CHECK-CP-JSON-DAG: "%3": 0,
|
|
# CHECK-CP-JSON-DAG: "%4": 11,
|
|
# CHECK-CP-JSON-DAG: "%6": 0,
|
|
# CHECK-CP-JSON-DAG: "%8": 1794,
|
|
# CHECK-CP-JSON-DAG: "%10": 7,
|
|
# CHECK-CP-JSON-DAG: "%12": 4,
|
|
# CHECK-CP-JSON-DAG: "%13": 3,
|
|
# CHECK-CP-JSON-DAG: "%14": 3,
|
|
# CHECK-CP-JSON-DAG: "%15": 2,
|
|
# CHECK-CP-JSON-DAG: "%16": 2,
|
|
# CHECK-CP-JSON-DAG: "%17": 1,
|
|
# CHECK-CP-JSON-DAG: "%18": 1,
|
|
# CHECK-CP-JSON-DAG: "%9": 6,
|
|
# CHECK-CP-JSON-DAG: "%11": 2,
|
|
# CHECK-CP-JSON-DAG: "%7": 4,
|
|
# CHECK-CP-JSON-DAG: "%19": 1,
|
|
# CHECK-CP-JSON-DAG: "%5": 1
|
|
# CHECK-CP-JSON: },
|
|
# CHECK-CP-JSON-NEXT: "paths": [
|
|
# CHECK-CP-JSON: ],
|
|
# CHECK-CP-JSON-NEXT: "metrics": {
|
|
# CHECK-CP-JSON-NEXT: "distance-cache": {
|
|
# CHECK-CP-JSON-NEXT: "hits": {{[0-9]+}},
|
|
# CHECK-CP-JSON-NEXT: "misses": {{[0-9]+}}
|
|
# CHECK-CP-JSON-NEXT: }
|
|
# CHECK-CP-JSON-NEXT: }
|
|
# CHECK-CP-JSON-NEXT: },
|
|
# CHECK-CP-JSON-DAG: "time.amdgpu-next-use-analysis-json.json.wall": {{[0-9.e+-]+}},
|
|
# CHECK-CP-JSON-DAG: "time.amdgpu-next-use-analysis-json.json.user": {{[0-9.e+-]+}},
|
|
# CHECK-CP-JSON-DAG: "time.amdgpu-next-use-analysis-json.json.sys": {{[0-9.e+-]+}}
|
|
# CHECK-CP-JSON: }
|