blob: 80751ae5f9de386faea3248d84392ec811dbcec9 [file]
# 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
#
# bb.0
# / |
# bb.1 |
# \ |
# bb.2
# / |
# bb.5 |
# \ |
# bb.3
# / |
# bb.4 |
# \ |
# bb.6
# / |
# bb.12 |
# \ |
# bb.7
# / |
# bb.8 |
# / | |
#bb.11 | |
# \ | |
# bb.9 |
# / | |
#bb.10 | |
# \ | |
# bb.13 |
# \ |
# bb.14
#
--- |
define amdgpu_ps i32 @test3(ptr addrspace(1) %gep1, ptr addrspace(1) %gep2, ptr addrspace(1) %p1, ptr addrspace(3) %p2) {
ret i32 0
}
...
---
name: test3
tracksRegLiveness: true
body: |
bb.0:
successors: %bb.1(0x40000000), %bb.2(0x40000000)
liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4
%0:vgpr_32 = COPY $vgpr4
%1:vgpr_32 = COPY $vgpr3
%2:vgpr_32 = COPY $vgpr2
%3:vgpr_32 = COPY $vgpr1
%4:vgpr_32 = COPY $vgpr0
%5:vreg_64 = REG_SEQUENCE %4, %subreg.sub0, %3, %subreg.sub1
%6:vgpr_32 = V_AND_B32_e64 1, %1, implicit $exec
%7:sreg_32 = V_CMP_EQ_U32_e64 1, %6, implicit $exec
%8:vgpr_32 = V_AND_B32_e64 1, %0, implicit $exec
%9:sreg_32 = V_CMP_EQ_U32_e64 1, %8, implicit $exec
%10:sreg_32 = S_XOR_B32 %9, -1, implicit-def dead $scc
%11:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 0, 0, implicit $exec :: (load (s8) from %ir.p1, addrspace 1)
%12:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 1, 0, implicit $exec :: (load (s8) from %ir.p1 + 1, addrspace 1)
%13:vgpr_32 = V_LSHL_OR_B32_e64 %12, 8, %11, implicit $exec
%14:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 2, 0, implicit $exec :: (load (s8) from %ir.p1 + 2, addrspace 1)
%15:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 3, 0, implicit $exec :: (load (s8) from %ir.p1 + 3, addrspace 1)
%16:vgpr_32 = V_LSHL_OR_B32_e64 %15, 8, %14, implicit $exec
%17:vgpr_32 = V_LSHL_OR_B32_e64 %16, 16, %13, implicit $exec
%18:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 12, 0, implicit $exec :: (load (s8) from %ir.gep1, addrspace 1)
%19:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 13, 0, implicit $exec :: (load (s8) from %ir.gep1 + 1, addrspace 1)
%20:vgpr_32 = V_LSHL_OR_B32_e64 %19, 8, %18, implicit $exec
%21:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 14, 0, implicit $exec :: (load (s8) from %ir.gep1 + 2, addrspace 1)
%22:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 15, 0, implicit $exec :: (load (s8) from %ir.gep1 + 3, addrspace 1)
%23:vgpr_32 = V_LSHL_OR_B32_e64 %22, 8, %21, implicit $exec
%24:vgpr_32 = V_LSHL_OR_B32_e64 %23, 16, %20, implicit $exec
%25:vgpr_32 = V_ADD_U32_e64 100, %17, 0, implicit $exec
%26:sreg_32 = SI_IF %7, %bb.2, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
S_BRANCH %bb.1
bb.1:
successors: %bb.2(0x80000000)
%27:vgpr_32 = V_MOV_B32_e32 100, implicit $exec
bb.2:
successors: %bb.5(0x40000000), %bb.3(0x40000000)
%28:vgpr_32 = PHI %25, %bb.0, %27, %bb.1
SI_END_CF %26, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
%29:vgpr_32 = DS_READ_U8_gfx9 %2, 0, 0, implicit $exec :: (load (s8) from %ir.p2, addrspace 3)
%30:vgpr_32 = DS_READ_U8_gfx9 %2, 1, 0, implicit $exec :: (load (s8) from %ir.p2 + 1, addrspace 3)
%31:vgpr_32 = DS_READ_U8_gfx9 %2, 2, 0, implicit $exec :: (load (s8) from %ir.p2 + 2, addrspace 3)
%32:vgpr_32 = DS_READ_U8_gfx9 %2, 3, 0, implicit $exec :: (load (s8) from %ir.p2 + 3, addrspace 3)
%33:vgpr_32 = V_LSHL_OR_B32_e64 %30, 8, %29, implicit $exec
%34:vgpr_32 = V_LSHL_OR_B32_e64 %32, 8, %31, implicit $exec
%35:vgpr_32 = V_LSHL_OR_B32_e64 %34, 16, %33, implicit $exec
%36:vgpr_32 = V_ADD_U32_e64 100, %35, 0, implicit $exec
%37:sreg_32 = SI_IF %10, %bb.3, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
S_BRANCH %bb.5
bb.3:
successors: %bb.4(0x40000000), %bb.6(0x40000000)
%38:vgpr_32 = PHI undef %39:vgpr_32, %bb.2, %40, %bb.5
%41:vgpr_32 = PHI %28, %bb.2, undef %42:vgpr_32, %bb.5
%43:sreg_32 = SI_ELSE %37, %bb.6, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
S_BRANCH %bb.4
bb.4:
successors: %bb.6(0x80000000)
%44:vreg_64, $sgpr_null = V_MAD_U64_U32_e64 %17, %41, 1000, 0, implicit $exec
%45:vgpr_32 = COPY %44.sub0
S_BRANCH %bb.6
bb.5:
successors: %bb.3(0x80000000)
%40:vgpr_32 = V_ADD_U32_e64 %36, %17, 0, implicit $exec
S_BRANCH %bb.3
bb.6:
successors: %bb.12(0x40000000), %bb.7(0x40000000)
%46:vgpr_32 = PHI %38, %bb.3, %45, %bb.4
SI_END_CF %43, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
%47:vgpr_32 = DS_READ_B32_gfx9 %2, 12, 0, implicit $exec :: (load (s32) from %ir.gep2, align 8, addrspace 3)
%48:vgpr_32 = V_ADD_U32_e64 %47, %46, 0, implicit $exec
%49:sreg_32 = S_XOR_B32 %7, %9, implicit-def dead $scc
%50:sreg_32 = S_XOR_B32 %49, -1, implicit-def dead $scc
%51:sreg_32 = SI_IF %50, %bb.7, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
S_BRANCH %bb.12
bb.7:
successors: %bb.8(0x40000000), %bb.14(0x40000000)
%52:vgpr_32 = PHI undef %53:vgpr_32, %bb.6, %54, %bb.12
%55:vgpr_32 = PHI %24, %bb.6, undef %56:vgpr_32, %bb.12
%57:vgpr_32 = PHI %48, %bb.6, undef %58:vgpr_32, %bb.12
%59:sreg_32 = SI_ELSE %51, %bb.14, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
S_BRANCH %bb.8
bb.8:
successors: %bb.11(0x40000000), %bb.9(0x40000000)
%60:sreg_32 = S_AND_B32 %7, %9, implicit-def dead $scc
%61:sreg_32 = S_XOR_B32 %60, -1, implicit-def dead $scc
%62:sreg_32 = SI_IF %61, %bb.9, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
S_BRANCH %bb.11
bb.9:
successors: %bb.10(0x40000000), %bb.13(0x40000000)
%63:vgpr_32 = PHI undef %64:vgpr_32, %bb.8, %65, %bb.11
%66:vgpr_32 = PHI %55, %bb.8, undef %67:vgpr_32, %bb.11
%68:vgpr_32 = PHI %57, %bb.8, undef %69:vgpr_32, %bb.11
%70:sreg_32 = SI_ELSE %62, %bb.13, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
S_BRANCH %bb.10
bb.10:
successors: %bb.13(0x80000000)
%71:vgpr_32 = V_ADD_U32_e64 %66, %68, 0, implicit $exec
S_BRANCH %bb.13
bb.11:
successors: %bb.9(0x80000000)
%65:vgpr_32 = V_MUL_LO_U32_e64 %55, %57, implicit $exec
S_BRANCH %bb.9
bb.12:
successors: %bb.7(0x80000000)
%72:vgpr_32 = V_SUB_U32_e64 %47, %48, 0, implicit $exec
%73:vgpr_32 = V_MUL_LO_U32_e64 %72, %35, implicit $exec
%74:vgpr_32 = V_CVT_F32_U32_e64 %17, 0, 0, implicit $mode, implicit $exec
%75:vgpr_32 = nofpexcept V_RCP_IFLAG_F32_e64 0, %74, 0, 0, implicit $mode, implicit $exec
%76:vgpr_32 = nnan ninf nsz arcp contract afn reassoc nofpexcept V_MUL_F32_e64 0, 1333788670, 0, %75, 0, 0, implicit $mode, implicit $exec
%77:vgpr_32 = nofpexcept V_CVT_U32_F32_e64 0, %76, 0, 0, implicit $mode, implicit $exec
%78:vgpr_32 = V_SUB_U32_e64 0, %17, 0, implicit $exec
%79:vgpr_32 = V_MUL_LO_U32_e64 %78, %77, implicit $exec
%80:vgpr_32 = V_MUL_HI_U32_e64 %77, %79, implicit $exec
%81:vgpr_32 = V_ADD_U32_e64 %77, %80, 0, implicit $exec
%82:vgpr_32 = V_MUL_HI_U32_e64 %73, %81, implicit $exec
%83:vgpr_32 = V_MUL_LO_U32_e64 %82, %17, implicit $exec
%84:vgpr_32 = V_SUB_U32_e64 %73, %83, 0, implicit $exec
%85:sreg_32_xm0_xexec = V_CMP_GE_U32_e64 %84, %17, implicit $exec
%86:vgpr_32 = V_ADD_U32_e64 1, %82, 0, implicit $exec
%87:vgpr_32 = V_CNDMASK_B32_e64 0, %82, 0, %86, %85, implicit $exec
%88:vgpr_32 = V_SUB_U32_e64 %84, %17, 0, implicit $exec
%89:vgpr_32 = V_CNDMASK_B32_e64 0, %84, 0, %88, %85, implicit $exec
%90:sreg_32_xm0_xexec = V_CMP_GE_U32_e64 %89, %17, implicit $exec
%91:vgpr_32 = V_ADD_U32_e64 1, %87, 0, implicit $exec
%92:vgpr_32 = V_CNDMASK_B32_e64 0, %87, 0, %91, %90, implicit $exec
%54:vgpr_32 = V_ADD_U32_e64 %92, %24, 0, implicit $exec
S_BRANCH %bb.7
bb.13:
successors: %bb.14(0x80000000)
%93:vgpr_32 = PHI %63, %bb.9, %71, %bb.10
SI_END_CF %70, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
bb.14:
%94:vgpr_32 = PHI %52, %bb.7, %93, %bb.13
SI_END_CF %59, implicit-def dead $exec, implicit-def dead $scc, implicit $exec
%95:vgpr_32 = V_ADD_U32_e64 %36, %94, 0, implicit $exec
%96:sreg_32_xm0 = V_READFIRSTLANE_B32 %95, implicit $exec
$sgpr0 = COPY %96
SI_RETURN_TO_EPILOG killed $sgpr0
...
---
# 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 $vgpr4",
# 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 $vgpr3",
# 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: },
# 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": 7
# 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": 7
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%2:vgpr_32 = COPY $vgpr2",
# 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": 4
# 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": 6
# 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": 6
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%3: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-DAG: "%0": 5
# CHECK-GX-JSON-DAG: "%1": 3
# CHECK-GX-JSON-DAG: "%2": 27
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 27
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 27
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%4: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": 4
# CHECK-GX-JSON-DAG: "%1": 2
# CHECK-GX-JSON-DAG: "%2": 26
# CHECK-GX-JSON-DAG: "%3": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 26
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 26
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%5:vreg_64 = REG_SEQUENCE %4, %subreg.sub0, %3, %subreg.sub1",
# 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": 1
# CHECK-GX-JSON-DAG: "%2": 25
# CHECK-GX-JSON-DAG: "%3": 0
# CHECK-GX-JSON-DAG: "%4": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 25
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 25
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%6:vgpr_32 = V_AND_B32_e64 1, %1, 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": 2
# CHECK-GX-JSON-DAG: "%1": 0
# CHECK-GX-JSON-DAG: "%2": 24
# CHECK-GX-JSON-DAG: "%5": 5
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 24
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 24
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%7:sreg_32 = V_CMP_EQ_U32_e64 1, %6, 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: "%2": 23
# CHECK-GX-JSON-DAG: "%5": 4
# CHECK-GX-JSON-DAG: "%6": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 23
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 23
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%8:vgpr_32 = V_AND_B32_e64 1, %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: "%2": 22
# CHECK-GX-JSON-DAG: "%5": 3
# CHECK-GX-JSON-DAG: "%7": 18
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 22
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 22
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%9:sreg_32 = V_CMP_EQ_U32_e64 1, %8, 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: "%2": 21
# CHECK-GX-JSON-DAG: "%5": 2
# CHECK-GX-JSON-DAG: "%7": 17
# CHECK-GX-JSON-DAG: "%8": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 21
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 21
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%10:sreg_32 = S_XOR_B32 %9, -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: "%2": 20
# CHECK-GX-JSON-DAG: "%5": 1
# CHECK-GX-JSON-DAG: "%7": 16
# CHECK-GX-JSON-DAG: "%9": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 20
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%2",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 20
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%11:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 0, 0, implicit $exec :: (load (s8) from %ir.p1, addrspace 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: "%2": 19
# CHECK-GX-JSON-DAG: "%5": 0
# CHECK-GX-JSON-DAG: "%7": 15
# CHECK-GX-JSON-DAG: "%9": 37
# CHECK-GX-JSON-DAG: "%10": 27
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 37
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 37
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%12:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 1, 0, implicit $exec :: (load (s8) from %ir.p1 + 1, addrspace 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: "%2": 18
# CHECK-GX-JSON-DAG: "%5": 0
# CHECK-GX-JSON-DAG: "%7": 14
# CHECK-GX-JSON-DAG: "%9": 36
# CHECK-GX-JSON-DAG: "%10": 26
# CHECK-GX-JSON-DAG: "%11": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 36
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 36
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%13:vgpr_32 = V_LSHL_OR_B32_e64 %12, 8, %11, 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: "%2": 17
# CHECK-GX-JSON-DAG: "%5": 1
# CHECK-GX-JSON-DAG: "%7": 13
# CHECK-GX-JSON-DAG: "%9": 35
# CHECK-GX-JSON-DAG: "%10": 25
# CHECK-GX-JSON-DAG: "%11": 0
# CHECK-GX-JSON-DAG: "%12": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 35
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 35
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%14:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 2, 0, implicit $exec :: (load (s8) from %ir.p1 + 2, addrspace 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: "%2": 16
# CHECK-GX-JSON-DAG: "%5": 0
# CHECK-GX-JSON-DAG: "%7": 12
# CHECK-GX-JSON-DAG: "%9": 34
# CHECK-GX-JSON-DAG: "%10": 24
# CHECK-GX-JSON-DAG: "%13": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 34
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 34
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%15:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 3, 0, implicit $exec :: (load (s8) from %ir.p1 + 3, addrspace 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: "%2": 15
# CHECK-GX-JSON-DAG: "%5": 0
# CHECK-GX-JSON-DAG: "%7": 11
# CHECK-GX-JSON-DAG: "%9": 33
# CHECK-GX-JSON-DAG: "%10": 23
# CHECK-GX-JSON-DAG: "%13": 2
# CHECK-GX-JSON-DAG: "%14": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 33
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 33
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%16: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: "%2": 14
# CHECK-GX-JSON-DAG: "%5": 2
# CHECK-GX-JSON-DAG: "%7": 10
# CHECK-GX-JSON-DAG: "%9": 32
# CHECK-GX-JSON-DAG: "%10": 22
# CHECK-GX-JSON-DAG: "%13": 1
# CHECK-GX-JSON-DAG: "%14": 0
# CHECK-GX-JSON-DAG: "%15": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 32
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 32
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%17:vgpr_32 = V_LSHL_OR_B32_e64 %16, 16, %13, 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: "%2": 13
# CHECK-GX-JSON-DAG: "%5": 1
# CHECK-GX-JSON-DAG: "%7": 9
# CHECK-GX-JSON-DAG: "%9": 31
# CHECK-GX-JSON-DAG: "%10": 21
# CHECK-GX-JSON-DAG: "%13": 0
# CHECK-GX-JSON-DAG: "%16": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 31
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 31
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%18:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 12, 0, implicit $exec :: (load (s8) from %ir.gep1, addrspace 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: "%2": 12
# CHECK-GX-JSON-DAG: "%5": 0
# CHECK-GX-JSON-DAG: "%7": 8
# CHECK-GX-JSON-DAG: "%9": 30
# CHECK-GX-JSON-DAG: "%10": 20
# CHECK-GX-JSON-DAG: "%17": 7
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 30
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 30
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%19:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 13, 0, implicit $exec :: (load (s8) from %ir.gep1 + 1, addrspace 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: "%2": 11
# CHECK-GX-JSON-DAG: "%5": 0
# CHECK-GX-JSON-DAG: "%7": 7
# CHECK-GX-JSON-DAG: "%9": 29
# CHECK-GX-JSON-DAG: "%10": 19
# CHECK-GX-JSON-DAG: "%17": 6
# CHECK-GX-JSON-DAG: "%18": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 29
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 29
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%20:vgpr_32 = V_LSHL_OR_B32_e64 %19, 8, %18, 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: "%2": 10
# CHECK-GX-JSON-DAG: "%5": 1
# CHECK-GX-JSON-DAG: "%7": 6
# CHECK-GX-JSON-DAG: "%9": 28
# CHECK-GX-JSON-DAG: "%10": 18
# CHECK-GX-JSON-DAG: "%17": 5
# CHECK-GX-JSON-DAG: "%18": 0
# CHECK-GX-JSON-DAG: "%19": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 28
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 28
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%21:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 14, 0, implicit $exec :: (load (s8) from %ir.gep1 + 2, addrspace 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: "%2": 9
# CHECK-GX-JSON-DAG: "%5": 0
# CHECK-GX-JSON-DAG: "%7": 5
# CHECK-GX-JSON-DAG: "%9": 27
# CHECK-GX-JSON-DAG: "%10": 17
# CHECK-GX-JSON-DAG: "%17": 4
# CHECK-GX-JSON-DAG: "%20": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 27
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 27
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%22:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 15, 0, implicit $exec :: (load (s8) from %ir.gep1 + 3, addrspace 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: "%2": 8
# CHECK-GX-JSON-DAG: "%5": 0
# CHECK-GX-JSON-DAG: "%7": 4
# CHECK-GX-JSON-DAG: "%9": 26
# CHECK-GX-JSON-DAG: "%10": 16
# CHECK-GX-JSON-DAG: "%17": 3
# CHECK-GX-JSON-DAG: "%20": 2
# CHECK-GX-JSON-DAG: "%21": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 26
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 26
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%23:vgpr_32 = V_LSHL_OR_B32_e64 %22, 8, %21, 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: "%2": 7
# CHECK-GX-JSON-DAG: "%7": 3
# CHECK-GX-JSON-DAG: "%9": 25
# CHECK-GX-JSON-DAG: "%10": 15
# CHECK-GX-JSON-DAG: "%17": 2
# CHECK-GX-JSON-DAG: "%20": 1
# CHECK-GX-JSON-DAG: "%21": 0
# CHECK-GX-JSON-DAG: "%22": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 25
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 25
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%24:vgpr_32 = V_LSHL_OR_B32_e64 %23, 16, %20, 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: "%2": 6
# CHECK-GX-JSON-DAG: "%7": 2
# CHECK-GX-JSON-DAG: "%9": 24
# CHECK-GX-JSON-DAG: "%10": 14
# CHECK-GX-JSON-DAG: "%17": 1
# CHECK-GX-JSON-DAG: "%20": 0
# CHECK-GX-JSON-DAG: "%23": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 24
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%9",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 24
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%25:vgpr_32 = V_ADD_U32_e64 100, %17, 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: "%2": 5
# CHECK-GX-JSON-DAG: "%7": 1
# CHECK-GX-JSON-DAG: "%9": 23
# CHECK-GX-JSON-DAG: "%10": 13
# CHECK-GX-JSON-DAG: "%17": 0
# CHECK-GX-JSON-DAG: "%24": 28
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 28
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 28
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%26:sreg_32 = SI_IF %7, %bb.2, 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: "%2": 4
# CHECK-GX-JSON-DAG: "%7": 0
# CHECK-GX-JSON-DAG: "%9": 22
# CHECK-GX-JSON-DAG: "%10": 12
# CHECK-GX-JSON-DAG: "%17": 14
# CHECK-GX-JSON-DAG: "%24": 27
# CHECK-GX-JSON-DAG: "%25": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 27
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 27
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "S_BRANCH %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: "%2": 3
# CHECK-GX-JSON-DAG: "%7": 21
# CHECK-GX-JSON-DAG: "%9": 21
# CHECK-GX-JSON-DAG: "%10": 11
# CHECK-GX-JSON-DAG: "%17": 13
# CHECK-GX-JSON-DAG: "%24": 26
# CHECK-GX-JSON-DAG: "%25": 1
# CHECK-GX-JSON-DAG: "%26": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 26
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 26
# 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": "%27: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: "%2": 3
# CHECK-GX-JSON-DAG: "%7": 21
# CHECK-GX-JSON-DAG: "%9": 21
# CHECK-GX-JSON-DAG: "%10": 11
# CHECK-GX-JSON-DAG: "%17": 13
# CHECK-GX-JSON-DAG: "%24": 26
# CHECK-GX-JSON-DAG: "%26": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 26
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 26
# 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": "%28:vgpr_32 = PHI %25, %bb.0, %27, %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: "%2": 2
# CHECK-GX-JSON-DAG: "%7": 20
# CHECK-GX-JSON-DAG: "%9": 20
# CHECK-GX-JSON-DAG: "%10": 10
# CHECK-GX-JSON-DAG: "%17": 12
# CHECK-GX-JSON-DAG: "%24": 25
# CHECK-GX-JSON-DAG: "%26": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 25
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 25
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "SI_END_CF %26, 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: "%2": 1
# CHECK-GX-JSON-DAG: "%7": 19
# CHECK-GX-JSON-DAG: "%9": 19
# CHECK-GX-JSON-DAG: "%10": 9
# CHECK-GX-JSON-DAG: "%17": 11
# CHECK-GX-JSON-DAG: "%24": 24
# CHECK-GX-JSON-DAG: "%26": 0
# CHECK-GX-JSON-DAG: "%28": 12
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 24
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 24
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%29:vgpr_32 = DS_READ_U8_gfx9 %2, 0, 0, implicit $exec :: (load (s8) from %ir.p2, 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: "%2": 0
# CHECK-GX-JSON-DAG: "%7": 18
# CHECK-GX-JSON-DAG: "%9": 18
# CHECK-GX-JSON-DAG: "%10": 8
# CHECK-GX-JSON-DAG: "%17": 10
# CHECK-GX-JSON-DAG: "%24": 23
# CHECK-GX-JSON-DAG: "%28": 11
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 23
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 23
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%30:vgpr_32 = DS_READ_U8_gfx9 %2, 1, 0, implicit $exec :: (load (s8) from %ir.p2 + 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: "%2": 0
# CHECK-GX-JSON-DAG: "%7": 17
# CHECK-GX-JSON-DAG: "%9": 17
# CHECK-GX-JSON-DAG: "%10": 7
# CHECK-GX-JSON-DAG: "%17": 9
# CHECK-GX-JSON-DAG: "%24": 22
# CHECK-GX-JSON-DAG: "%28": 10
# CHECK-GX-JSON-DAG: "%29": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 22
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 22
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%31:vgpr_32 = DS_READ_U8_gfx9 %2, 2, 0, implicit $exec :: (load (s8) from %ir.p2 + 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: "%2": 0
# CHECK-GX-JSON-DAG: "%7": 16
# CHECK-GX-JSON-DAG: "%9": 16
# CHECK-GX-JSON-DAG: "%10": 6
# CHECK-GX-JSON-DAG: "%17": 8
# CHECK-GX-JSON-DAG: "%24": 21
# CHECK-GX-JSON-DAG: "%28": 9
# CHECK-GX-JSON-DAG: "%29": 2
# CHECK-GX-JSON-DAG: "%30": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 21
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 21
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%32:vgpr_32 = DS_READ_U8_gfx9 %2, 3, 0, implicit $exec :: (load (s8) from %ir.p2 + 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: "%2": 0
# CHECK-GX-JSON-DAG: "%7": 15
# CHECK-GX-JSON-DAG: "%9": 15
# CHECK-GX-JSON-DAG: "%10": 5
# CHECK-GX-JSON-DAG: "%17": 7
# CHECK-GX-JSON-DAG: "%24": 20
# CHECK-GX-JSON-DAG: "%28": 8
# CHECK-GX-JSON-DAG: "%29": 1
# CHECK-GX-JSON-DAG: "%30": 1
# CHECK-GX-JSON-DAG: "%31": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 20
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 20
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%33:vgpr_32 = V_LSHL_OR_B32_e64 %30, 8, %29, 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: "%2": 12
# CHECK-GX-JSON-DAG: "%7": 14
# CHECK-GX-JSON-DAG: "%9": 14
# CHECK-GX-JSON-DAG: "%10": 4
# CHECK-GX-JSON-DAG: "%17": 6
# CHECK-GX-JSON-DAG: "%24": 19
# CHECK-GX-JSON-DAG: "%28": 7
# CHECK-GX-JSON-DAG: "%29": 0
# CHECK-GX-JSON-DAG: "%30": 0
# CHECK-GX-JSON-DAG: "%31": 1
# CHECK-GX-JSON-DAG: "%32": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 19
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 19
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%34:vgpr_32 = V_LSHL_OR_B32_e64 %32, 8, %31, 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: "%2": 11
# CHECK-GX-JSON-DAG: "%7": 13
# CHECK-GX-JSON-DAG: "%9": 13
# CHECK-GX-JSON-DAG: "%10": 3
# CHECK-GX-JSON-DAG: "%17": 5
# CHECK-GX-JSON-DAG: "%24": 18
# CHECK-GX-JSON-DAG: "%28": 6
# CHECK-GX-JSON-DAG: "%31": 0
# CHECK-GX-JSON-DAG: "%32": 0
# CHECK-GX-JSON-DAG: "%33": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 18
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%24",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 18
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%35:vgpr_32 = V_LSHL_OR_B32_e64 %34, 16, %33, 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: "%2": 10
# CHECK-GX-JSON-DAG: "%7": 12
# CHECK-GX-JSON-DAG: "%9": 12
# CHECK-GX-JSON-DAG: "%10": 2
# CHECK-GX-JSON-DAG: "%17": 4
# CHECK-GX-JSON-DAG: "%24": 17
# CHECK-GX-JSON-DAG: "%28": 5
# CHECK-GX-JSON-DAG: "%33": 0
# CHECK-GX-JSON-DAG: "%34": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# 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": "%24",
# 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": "%36:vgpr_32 = V_ADD_U32_e64 100, %35, 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: "%2": 9
# CHECK-GX-JSON-DAG: "%7": 11
# CHECK-GX-JSON-DAG: "%9": 11
# CHECK-GX-JSON-DAG: "%10": 1
# CHECK-GX-JSON-DAG: "%17": 3
# CHECK-GX-JSON-DAG: "%24": 16
# CHECK-GX-JSON-DAG: "%28": 4
# CHECK-GX-JSON-DAG: "%35": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# 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": "%24",
# 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": "%37:sreg_32 = SI_IF %10, %bb.3, 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: "%2": 8
# CHECK-GX-JSON-DAG: "%7": 10
# CHECK-GX-JSON-DAG: "%9": 10
# CHECK-GX-JSON-DAG: "%10": 0
# CHECK-GX-JSON-DAG: "%17": 2
# CHECK-GX-JSON-DAG: "%24": 15
# CHECK-GX-JSON-DAG: "%28": 3
# CHECK-GX-JSON-DAG: "%35": 15
# CHECK-GX-JSON-DAG: "%36": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# 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": "%24",
# 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: "instr": "S_BRANCH %bb.5",
# 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: "%2": 7
# CHECK-GX-JSON-DAG: "%7": 9
# CHECK-GX-JSON-DAG: "%9": 9
# CHECK-GX-JSON-DAG: "%17": 1
# CHECK-GX-JSON-DAG: "%24": 14
# CHECK-GX-JSON-DAG: "%28": 2
# CHECK-GX-JSON-DAG: "%35": 14
# CHECK-GX-JSON-DAG: "%36": 1
# CHECK-GX-JSON-DAG: "%37": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# 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": "%24",
# 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: "bb.3": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%38:vgpr_32 = PHI undef %39:vgpr_32, %bb.2, %40, %bb.5",
# 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: "%2": 6
# CHECK-GX-JSON-DAG: "%7": 8
# CHECK-GX-JSON-DAG: "%9": 8
# CHECK-GX-JSON-DAG: "%17": 4
# CHECK-GX-JSON-DAG: "%24": 13
# CHECK-GX-JSON-DAG: "%35": 13
# CHECK-GX-JSON-DAG: "%36": 19
# CHECK-GX-JSON-DAG: "%37": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 19
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 19
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%41:vgpr_32 = PHI %28, %bb.2, undef %42:vgpr_32, %bb.5",
# 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: "%2": 5
# CHECK-GX-JSON-DAG: "%7": 7
# CHECK-GX-JSON-DAG: "%9": 7
# CHECK-GX-JSON-DAG: "%17": 3
# CHECK-GX-JSON-DAG: "%24": 12
# CHECK-GX-JSON-DAG: "%35": 12
# CHECK-GX-JSON-DAG: "%36": 18
# CHECK-GX-JSON-DAG: "%37": 1
# CHECK-GX-JSON-DAG: "%38": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 18
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 18
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%43:sreg_32 = SI_ELSE %37, %bb.6, 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: "%2": 4
# CHECK-GX-JSON-DAG: "%7": 6
# CHECK-GX-JSON-DAG: "%9": 6
# CHECK-GX-JSON-DAG: "%17": 2
# CHECK-GX-JSON-DAG: "%24": 11
# CHECK-GX-JSON-DAG: "%35": 11
# CHECK-GX-JSON-DAG: "%36": 17
# CHECK-GX-JSON-DAG: "%37": 0
# CHECK-GX-JSON-DAG: "%38": 2
# CHECK-GX-JSON-DAG: "%41": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "S_BRANCH %bb.4",
# 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: "%2": 3
# CHECK-GX-JSON-DAG: "%7": 5
# CHECK-GX-JSON-DAG: "%9": 5
# CHECK-GX-JSON-DAG: "%17": 1
# CHECK-GX-JSON-DAG: "%24": 10
# CHECK-GX-JSON-DAG: "%35": 10
# CHECK-GX-JSON-DAG: "%36": 16
# CHECK-GX-JSON-DAG: "%38": 1
# CHECK-GX-JSON-DAG: "%41": 1
# CHECK-GX-JSON-DAG: "%43": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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: "bb.4": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%44:vreg_64, $sgpr_null = V_MAD_U64_U32_e64 %17, %41, 1000, 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: "%2": 5
# CHECK-GX-JSON-DAG: "%7": 7
# CHECK-GX-JSON-DAG: "%9": 7
# CHECK-GX-JSON-DAG: "%17": 0
# CHECK-GX-JSON-DAG: "%24": 12
# CHECK-GX-JSON-DAG: "%35": 12
# CHECK-GX-JSON-DAG: "%36": 18
# CHECK-GX-JSON-DAG: "%41": 0
# CHECK-GX-JSON-DAG: "%43": 4
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 18
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 18
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%45:vgpr_32 = COPY %44.sub0",
# 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: "%2": 4
# CHECK-GX-JSON-DAG: "%7": 6
# CHECK-GX-JSON-DAG: "%9": 6
# CHECK-GX-JSON-DAG: "%17": 12
# CHECK-GX-JSON-DAG: "%24": 11
# CHECK-GX-JSON-DAG: "%35": 11
# CHECK-GX-JSON-DAG: "%36": 17
# CHECK-GX-JSON-DAG: "%43": 3
# CHECK-GX-JSON-DAG: "%44:sub0": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "S_BRANCH %bb.6",
# 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: "%2": 3
# CHECK-GX-JSON-DAG: "%7": 5
# CHECK-GX-JSON-DAG: "%9": 5
# CHECK-GX-JSON-DAG: "%17": 11
# CHECK-GX-JSON-DAG: "%24": 10
# CHECK-GX-JSON-DAG: "%35": 10
# CHECK-GX-JSON-DAG: "%36": 16
# CHECK-GX-JSON-DAG: "%43": 2
# CHECK-GX-JSON-DAG: "%45": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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: "bb.5": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%40:vgpr_32 = V_ADD_U32_e64 %36, %17, 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: "%2": 8
# CHECK-GX-JSON-DAG: "%7": 10
# CHECK-GX-JSON-DAG: "%9": 10
# CHECK-GX-JSON-DAG: "%17": 0
# CHECK-GX-JSON-DAG: "%24": 15
# CHECK-GX-JSON-DAG: "%35": 15
# CHECK-GX-JSON-DAG: "%36": 0
# CHECK-GX-JSON-DAG: "%37": 4
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%24",
# 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": "%24",
# 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: "instr": "S_BRANCH %bb.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: "%2": 7
# CHECK-GX-JSON-DAG: "%7": 9
# CHECK-GX-JSON-DAG: "%9": 9
# CHECK-GX-JSON-DAG: "%17": 5
# CHECK-GX-JSON-DAG: "%24": 14
# CHECK-GX-JSON-DAG: "%35": 14
# CHECK-GX-JSON-DAG: "%36": 20
# CHECK-GX-JSON-DAG: "%37": 3
# CHECK-GX-JSON-DAG: "%40": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 20
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 20
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: }
# CHECK-GX-JSON-NEXT: ],
# CHECK-GX-JSON-NEXT: "bb.6": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%46:vgpr_32 = PHI %38, %bb.3, %45, %bb.4",
# 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: "%2": 2
# CHECK-GX-JSON-DAG: "%7": 4
# CHECK-GX-JSON-DAG: "%9": 4
# CHECK-GX-JSON-DAG: "%17": 10
# CHECK-GX-JSON-DAG: "%24": 9
# CHECK-GX-JSON-DAG: "%35": 9
# CHECK-GX-JSON-DAG: "%36": 15
# CHECK-GX-JSON-DAG: "%43": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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: "instr": "SI_END_CF %43, 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: "%2": 1
# CHECK-GX-JSON-DAG: "%7": 3
# CHECK-GX-JSON-DAG: "%9": 3
# CHECK-GX-JSON-DAG: "%17": 9
# CHECK-GX-JSON-DAG: "%24": 8
# CHECK-GX-JSON-DAG: "%35": 8
# CHECK-GX-JSON-DAG: "%36": 14
# CHECK-GX-JSON-DAG: "%43": 0
# CHECK-GX-JSON-DAG: "%46": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "%47:vgpr_32 = DS_READ_B32_gfx9 %2, 12, 0, implicit $exec :: (load (s32) from %ir.gep2, align 8, 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: "%2": 0
# CHECK-GX-JSON-DAG: "%7": 2
# CHECK-GX-JSON-DAG: "%9": 2
# CHECK-GX-JSON-DAG: "%17": 8
# CHECK-GX-JSON-DAG: "%24": 7
# CHECK-GX-JSON-DAG: "%35": 7
# CHECK-GX-JSON-DAG: "%36": 13
# CHECK-GX-JSON-DAG: "%46": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 13
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 13
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%48:vgpr_32 = V_ADD_U32_e64 %47, %46, 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: "%7": 1
# CHECK-GX-JSON-DAG: "%9": 1
# CHECK-GX-JSON-DAG: "%17": 7
# CHECK-GX-JSON-DAG: "%24": 6
# CHECK-GX-JSON-DAG: "%35": 6
# CHECK-GX-JSON-DAG: "%36": 12
# CHECK-GX-JSON-DAG: "%46": 0
# CHECK-GX-JSON-DAG: "%47": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 12
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 12
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%49:sreg_32 = S_XOR_B32 %7, %9, 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: "%7": 0
# CHECK-GX-JSON-DAG: "%9": 0
# CHECK-GX-JSON-DAG: "%17": 6
# CHECK-GX-JSON-DAG: "%24": 5
# CHECK-GX-JSON-DAG: "%35": 5
# CHECK-GX-JSON-DAG: "%36": 11
# CHECK-GX-JSON-DAG: "%47": 4
# CHECK-GX-JSON-DAG: "%48": 4
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 11
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 11
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%50:sreg_32 = S_XOR_B32 %49, -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: "%7": 8
# CHECK-GX-JSON-DAG: "%9": 8
# CHECK-GX-JSON-DAG: "%17": 5
# CHECK-GX-JSON-DAG: "%24": 4
# CHECK-GX-JSON-DAG: "%35": 4
# CHECK-GX-JSON-DAG: "%36": 10
# CHECK-GX-JSON-DAG: "%47": 3
# CHECK-GX-JSON-DAG: "%48": 3
# CHECK-GX-JSON-DAG: "%49": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 10
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 10
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%51:sreg_32 = SI_IF %50, %bb.7, 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: "%7": 7
# CHECK-GX-JSON-DAG: "%9": 7
# CHECK-GX-JSON-DAG: "%17": 4
# CHECK-GX-JSON-DAG: "%24": 3
# CHECK-GX-JSON-DAG: "%35": 3
# CHECK-GX-JSON-DAG: "%36": 9
# CHECK-GX-JSON-DAG: "%47": 2
# CHECK-GX-JSON-DAG: "%48": 2
# CHECK-GX-JSON-DAG: "%50": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 9
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 9
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "S_BRANCH %bb.12",
# 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: "%7": 6
# CHECK-GX-JSON-DAG: "%9": 6
# CHECK-GX-JSON-DAG: "%17": 3
# CHECK-GX-JSON-DAG: "%24": 2
# CHECK-GX-JSON-DAG: "%35": 2
# CHECK-GX-JSON-DAG: "%36": 8
# CHECK-GX-JSON-DAG: "%47": 1
# CHECK-GX-JSON-DAG: "%48": 1
# CHECK-GX-JSON-DAG: "%51": 4
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 8
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 8
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: }
# CHECK-GX-JSON-NEXT: ],
# CHECK-GX-JSON-NEXT: "bb.7": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%52:vgpr_32 = PHI undef %53:vgpr_32, %bb.6, %54, %bb.12",
# 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: "%7": 5
# CHECK-GX-JSON-DAG: "%9": 5
# CHECK-GX-JSON-DAG: "%36": 7
# CHECK-GX-JSON-DAG: "%51": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 7
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 7
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%55:vgpr_32 = PHI %24, %bb.6, undef %56:vgpr_32, %bb.12",
# 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: "%7": 4
# CHECK-GX-JSON-DAG: "%9": 4
# CHECK-GX-JSON-DAG: "%36": 6
# CHECK-GX-JSON-DAG: "%51": 2
# CHECK-GX-JSON-DAG: "%52": 4
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 6
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 6
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%57:vgpr_32 = PHI %48, %bb.6, undef %58:vgpr_32, %bb.12",
# 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: "%7": 3
# CHECK-GX-JSON-DAG: "%9": 3
# CHECK-GX-JSON-DAG: "%36": 5
# CHECK-GX-JSON-DAG: "%51": 1
# CHECK-GX-JSON-DAG: "%52": 3
# CHECK-GX-JSON-DAG: "%55": 7
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%55",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 7
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%55",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 7
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%59:sreg_32 = SI_ELSE %51, %bb.14, 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: "%7": 2
# CHECK-GX-JSON-DAG: "%9": 2
# CHECK-GX-JSON-DAG: "%36": 4
# CHECK-GX-JSON-DAG: "%51": 0
# CHECK-GX-JSON-DAG: "%52": 2
# CHECK-GX-JSON-DAG: "%55": 6
# CHECK-GX-JSON-DAG: "%57": 6
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%55",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 6
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%55",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 6
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "S_BRANCH %bb.8",
# 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: "%7": 1
# CHECK-GX-JSON-DAG: "%9": 1
# CHECK-GX-JSON-DAG: "%36": 3
# CHECK-GX-JSON-DAG: "%52": 1
# CHECK-GX-JSON-DAG: "%55": 5
# CHECK-GX-JSON-DAG: "%57": 5
# CHECK-GX-JSON-DAG: "%59": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%55",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 5
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%55",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 5
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: }
# CHECK-GX-JSON-NEXT: ],
# CHECK-GX-JSON-NEXT: "bb.8": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%60:sreg_32 = S_AND_B32 %7, %9, 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: "%7": 0
# CHECK-GX-JSON-DAG: "%9": 0
# CHECK-GX-JSON-DAG: "%36": 13
# CHECK-GX-JSON-DAG: "%55": 4
# CHECK-GX-JSON-DAG: "%57": 4
# CHECK-GX-JSON-DAG: "%59": 12
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 13
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 13
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%61:sreg_32 = S_XOR_B32 %60, -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: "%36": 12
# CHECK-GX-JSON-DAG: "%55": 3
# CHECK-GX-JSON-DAG: "%57": 3
# CHECK-GX-JSON-DAG: "%59": 11
# CHECK-GX-JSON-DAG: "%60": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 12
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 12
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%62:sreg_32 = SI_IF %61, %bb.9, 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: "%36": 11
# CHECK-GX-JSON-DAG: "%55": 2
# CHECK-GX-JSON-DAG: "%57": 2
# CHECK-GX-JSON-DAG: "%59": 10
# CHECK-GX-JSON-DAG: "%61": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 11
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 11
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "S_BRANCH %bb.11",
# 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: "%36": 10
# CHECK-GX-JSON-DAG: "%55": 1
# CHECK-GX-JSON-DAG: "%57": 1
# CHECK-GX-JSON-DAG: "%59": 9
# CHECK-GX-JSON-DAG: "%62": 4
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 10
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 10
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: }
# CHECK-GX-JSON-NEXT: ],
# CHECK-GX-JSON-NEXT: "bb.9": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%63:vgpr_32 = PHI undef %64:vgpr_32, %bb.8, %65, %bb.11",
# 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: "%36": 9
# CHECK-GX-JSON-DAG: "%59": 8
# CHECK-GX-JSON-DAG: "%62": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 9
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 9
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%66:vgpr_32 = PHI %55, %bb.8, undef %67:vgpr_32, %bb.11",
# 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: "%36": 8
# CHECK-GX-JSON-DAG: "%59": 7
# CHECK-GX-JSON-DAG: "%62": 2
# CHECK-GX-JSON-DAG: "%63": 4
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 8
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 8
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%68:vgpr_32 = PHI %57, %bb.8, undef %69:vgpr_32, %bb.11",
# 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: "%36": 7
# CHECK-GX-JSON-DAG: "%59": 6
# CHECK-GX-JSON-DAG: "%62": 1
# CHECK-GX-JSON-DAG: "%63": 3
# CHECK-GX-JSON-DAG: "%66": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 7
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 7
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%70:sreg_32 = SI_ELSE %62, %bb.13, 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: "%36": 6
# CHECK-GX-JSON-DAG: "%59": 5
# CHECK-GX-JSON-DAG: "%62": 0
# CHECK-GX-JSON-DAG: "%63": 2
# CHECK-GX-JSON-DAG: "%66": 2
# CHECK-GX-JSON-DAG: "%68": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 6
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 6
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "S_BRANCH %bb.10",
# 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: "%36": 5
# CHECK-GX-JSON-DAG: "%59": 4
# CHECK-GX-JSON-DAG: "%63": 1
# CHECK-GX-JSON-DAG: "%66": 1
# CHECK-GX-JSON-DAG: "%68": 1
# CHECK-GX-JSON-DAG: "%70": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 5
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 5
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: }
# CHECK-GX-JSON-NEXT: ],
# CHECK-GX-JSON-NEXT: "bb.10": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%71:vgpr_32 = V_ADD_U32_e64 %66, %68, 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: "%36": 6
# CHECK-GX-JSON-DAG: "%59": 5
# CHECK-GX-JSON-DAG: "%66": 0
# CHECK-GX-JSON-DAG: "%68": 0
# CHECK-GX-JSON-DAG: "%70": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 6
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 6
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "S_BRANCH %bb.13",
# 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: "%36": 5
# CHECK-GX-JSON-DAG: "%59": 4
# CHECK-GX-JSON-DAG: "%70": 2
# CHECK-GX-JSON-DAG: "%71": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 5
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 5
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: }
# CHECK-GX-JSON-NEXT: ],
# CHECK-GX-JSON-NEXT: "bb.11": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%65:vgpr_32 = V_MUL_LO_U32_e64 %55, %57, 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: "%36": 11
# CHECK-GX-JSON-DAG: "%55": 0
# CHECK-GX-JSON-DAG: "%57": 0
# CHECK-GX-JSON-DAG: "%59": 10
# CHECK-GX-JSON-DAG: "%62": 5
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 11
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 11
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "S_BRANCH %bb.9",
# 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: "%36": 10
# CHECK-GX-JSON-DAG: "%59": 9
# CHECK-GX-JSON-DAG: "%62": 4
# CHECK-GX-JSON-DAG: "%65": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 10
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 10
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: }
# CHECK-GX-JSON-NEXT: ],
# CHECK-GX-JSON-NEXT: "bb.12": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%72:vgpr_32 = V_SUB_U32_e64 %47, %48, 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: "%7": 28
# CHECK-GX-JSON-DAG: "%9": 28
# CHECK-GX-JSON-DAG: "%17": 2
# CHECK-GX-JSON-DAG: "%24": 21
# CHECK-GX-JSON-DAG: "%35": 1
# CHECK-GX-JSON-DAG: "%36": 30
# CHECK-GX-JSON-DAG: "%47": 0
# CHECK-GX-JSON-DAG: "%48": 0
# CHECK-GX-JSON-DAG: "%51": 26
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 30
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 30
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%73:vgpr_32 = V_MUL_LO_U32_e64 %72, %35, 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: "%7": 27
# CHECK-GX-JSON-DAG: "%9": 27
# CHECK-GX-JSON-DAG: "%17": 1
# CHECK-GX-JSON-DAG: "%24": 20
# CHECK-GX-JSON-DAG: "%35": 0
# CHECK-GX-JSON-DAG: "%36": 29
# CHECK-GX-JSON-DAG: "%51": 25
# CHECK-GX-JSON-DAG: "%72": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 29
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 29
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%74:vgpr_32 = V_CVT_F32_U32_e64 %17, 0, 0, implicit $mode, 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: "%7": 26
# CHECK-GX-JSON-DAG: "%9": 26
# CHECK-GX-JSON-DAG: "%17": 0
# CHECK-GX-JSON-DAG: "%24": 19
# CHECK-GX-JSON-DAG: "%36": 28
# CHECK-GX-JSON-DAG: "%51": 24
# CHECK-GX-JSON-DAG: "%73": 8
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 28
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 28
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%75:vgpr_32 = nofpexcept V_RCP_IFLAG_F32_e64 0, %74, 0, 0, implicit $mode, 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: "%7": 25
# CHECK-GX-JSON-DAG: "%9": 25
# CHECK-GX-JSON-DAG: "%17": 3
# CHECK-GX-JSON-DAG: "%24": 18
# CHECK-GX-JSON-DAG: "%36": 27
# CHECK-GX-JSON-DAG: "%51": 23
# CHECK-GX-JSON-DAG: "%73": 7
# CHECK-GX-JSON-DAG: "%74": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 27
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 27
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%76:vgpr_32 = nnan ninf nsz arcp contract afn reassoc nofpexcept V_MUL_F32_e64 0, 1333788670, 0, %75, 0, 0, implicit $mode, 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: "%7": 24
# CHECK-GX-JSON-DAG: "%9": 24
# CHECK-GX-JSON-DAG: "%17": 2
# CHECK-GX-JSON-DAG: "%24": 17
# CHECK-GX-JSON-DAG: "%36": 26
# CHECK-GX-JSON-DAG: "%51": 22
# CHECK-GX-JSON-DAG: "%73": 6
# CHECK-GX-JSON-DAG: "%75": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 26
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 26
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%77:vgpr_32 = nofpexcept V_CVT_U32_F32_e64 0, %76, 0, 0, implicit $mode, 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: "%7": 23
# CHECK-GX-JSON-DAG: "%9": 23
# CHECK-GX-JSON-DAG: "%17": 1
# CHECK-GX-JSON-DAG: "%24": 16
# CHECK-GX-JSON-DAG: "%36": 25
# CHECK-GX-JSON-DAG: "%51": 21
# CHECK-GX-JSON-DAG: "%73": 5
# CHECK-GX-JSON-DAG: "%76": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 25
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 25
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%78:vgpr_32 = V_SUB_U32_e64 0, %17, 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: "%7": 22
# CHECK-GX-JSON-DAG: "%9": 22
# CHECK-GX-JSON-DAG: "%17": 0
# CHECK-GX-JSON-DAG: "%24": 15
# CHECK-GX-JSON-DAG: "%36": 24
# CHECK-GX-JSON-DAG: "%51": 20
# CHECK-GX-JSON-DAG: "%73": 4
# CHECK-GX-JSON-DAG: "%77": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 24
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 24
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%79:vgpr_32 = V_MUL_LO_U32_e64 %78, %77, 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: "%7": 21
# CHECK-GX-JSON-DAG: "%9": 21
# CHECK-GX-JSON-DAG: "%17": 4
# CHECK-GX-JSON-DAG: "%24": 14
# CHECK-GX-JSON-DAG: "%36": 23
# CHECK-GX-JSON-DAG: "%51": 19
# CHECK-GX-JSON-DAG: "%73": 3
# CHECK-GX-JSON-DAG: "%77": 0
# CHECK-GX-JSON-DAG: "%78": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 23
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 23
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%80:vgpr_32 = V_MUL_HI_U32_e64 %77, %79, 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: "%7": 20
# CHECK-GX-JSON-DAG: "%9": 20
# CHECK-GX-JSON-DAG: "%17": 3
# CHECK-GX-JSON-DAG: "%24": 13
# CHECK-GX-JSON-DAG: "%36": 22
# CHECK-GX-JSON-DAG: "%51": 18
# CHECK-GX-JSON-DAG: "%73": 2
# CHECK-GX-JSON-DAG: "%77": 0
# CHECK-GX-JSON-DAG: "%79": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 22
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 22
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%81:vgpr_32 = V_ADD_U32_e64 %77, %80, 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: "%7": 19
# CHECK-GX-JSON-DAG: "%9": 19
# CHECK-GX-JSON-DAG: "%17": 2
# CHECK-GX-JSON-DAG: "%24": 12
# CHECK-GX-JSON-DAG: "%36": 21
# CHECK-GX-JSON-DAG: "%51": 17
# CHECK-GX-JSON-DAG: "%73": 1
# CHECK-GX-JSON-DAG: "%77": 0
# CHECK-GX-JSON-DAG: "%80": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 21
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 21
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%82:vgpr_32 = V_MUL_HI_U32_e64 %73, %81, 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: "%7": 18
# CHECK-GX-JSON-DAG: "%9": 18
# CHECK-GX-JSON-DAG: "%17": 1
# CHECK-GX-JSON-DAG: "%24": 11
# CHECK-GX-JSON-DAG: "%36": 20
# CHECK-GX-JSON-DAG: "%51": 16
# CHECK-GX-JSON-DAG: "%73": 0
# CHECK-GX-JSON-DAG: "%81": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 20
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 20
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%83:vgpr_32 = V_MUL_LO_U32_e64 %82, %17, 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: "%7": 17
# CHECK-GX-JSON-DAG: "%9": 17
# CHECK-GX-JSON-DAG: "%17": 0
# CHECK-GX-JSON-DAG: "%24": 10
# CHECK-GX-JSON-DAG: "%36": 19
# CHECK-GX-JSON-DAG: "%51": 15
# CHECK-GX-JSON-DAG: "%73": 1
# CHECK-GX-JSON-DAG: "%82": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 19
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 19
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%84:vgpr_32 = V_SUB_U32_e64 %73, %83, 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: "%7": 16
# CHECK-GX-JSON-DAG: "%9": 16
# CHECK-GX-JSON-DAG: "%17": 1
# CHECK-GX-JSON-DAG: "%24": 9
# CHECK-GX-JSON-DAG: "%36": 18
# CHECK-GX-JSON-DAG: "%51": 14
# CHECK-GX-JSON-DAG: "%73": 0
# CHECK-GX-JSON-DAG: "%82": 2
# CHECK-GX-JSON-DAG: "%83": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 18
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 18
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%85:sreg_32_xm0_xexec = V_CMP_GE_U32_e64 %84, %17, 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: "%7": 15
# CHECK-GX-JSON-DAG: "%9": 15
# CHECK-GX-JSON-DAG: "%17": 0
# CHECK-GX-JSON-DAG: "%24": 8
# CHECK-GX-JSON-DAG: "%36": 17
# CHECK-GX-JSON-DAG: "%51": 13
# CHECK-GX-JSON-DAG: "%82": 1
# CHECK-GX-JSON-DAG: "%84": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "%86:vgpr_32 = V_ADD_U32_e64 1, %82, 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: "%7": 14
# CHECK-GX-JSON-DAG: "%9": 14
# CHECK-GX-JSON-DAG: "%17": 2
# CHECK-GX-JSON-DAG: "%24": 7
# CHECK-GX-JSON-DAG: "%36": 16
# CHECK-GX-JSON-DAG: "%51": 12
# CHECK-GX-JSON-DAG: "%82": 0
# CHECK-GX-JSON-DAG: "%84": 2
# CHECK-GX-JSON-DAG: "%85": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "%87:vgpr_32 = V_CNDMASK_B32_e64 0, %82, 0, %86, %85, 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: "%7": 13
# CHECK-GX-JSON-DAG: "%9": 13
# CHECK-GX-JSON-DAG: "%17": 1
# CHECK-GX-JSON-DAG: "%24": 6
# CHECK-GX-JSON-DAG: "%36": 15
# CHECK-GX-JSON-DAG: "%51": 11
# CHECK-GX-JSON-DAG: "%82": 0
# CHECK-GX-JSON-DAG: "%84": 1
# CHECK-GX-JSON-DAG: "%85": 0
# CHECK-GX-JSON-DAG: "%86": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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: "instr": "%88:vgpr_32 = V_SUB_U32_e64 %84, %17, 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: "%7": 12
# CHECK-GX-JSON-DAG: "%9": 12
# CHECK-GX-JSON-DAG: "%17": 0
# CHECK-GX-JSON-DAG: "%24": 5
# CHECK-GX-JSON-DAG: "%36": 14
# CHECK-GX-JSON-DAG: "%51": 10
# CHECK-GX-JSON-DAG: "%84": 0
# CHECK-GX-JSON-DAG: "%85": 1
# CHECK-GX-JSON-DAG: "%87": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "%89:vgpr_32 = V_CNDMASK_B32_e64 0, %84, 0, %88, %85, 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: "%7": 11
# CHECK-GX-JSON-DAG: "%9": 11
# CHECK-GX-JSON-DAG: "%17": 1
# CHECK-GX-JSON-DAG: "%24": 4
# CHECK-GX-JSON-DAG: "%36": 13
# CHECK-GX-JSON-DAG: "%51": 9
# CHECK-GX-JSON-DAG: "%84": 0
# CHECK-GX-JSON-DAG: "%85": 0
# CHECK-GX-JSON-DAG: "%87": 2
# CHECK-GX-JSON-DAG: "%88": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 13
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 13
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%90:sreg_32_xm0_xexec = V_CMP_GE_U32_e64 %89, %17, 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: "%7": 10
# CHECK-GX-JSON-DAG: "%9": 10
# CHECK-GX-JSON-DAG: "%17": 0
# CHECK-GX-JSON-DAG: "%24": 3
# CHECK-GX-JSON-DAG: "%36": 12
# CHECK-GX-JSON-DAG: "%51": 8
# CHECK-GX-JSON-DAG: "%87": 1
# CHECK-GX-JSON-DAG: "%89": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 12
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 12
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%91:vgpr_32 = V_ADD_U32_e64 1, %87, 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: "%7": 9
# CHECK-GX-JSON-DAG: "%9": 9
# CHECK-GX-JSON-DAG: "%24": 2
# CHECK-GX-JSON-DAG: "%36": 11
# CHECK-GX-JSON-DAG: "%51": 7
# CHECK-GX-JSON-DAG: "%87": 0
# CHECK-GX-JSON-DAG: "%90": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 11
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 11
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%92:vgpr_32 = V_CNDMASK_B32_e64 0, %87, 0, %91, %90, 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: "%7": 8
# CHECK-GX-JSON-DAG: "%9": 8
# CHECK-GX-JSON-DAG: "%24": 1
# CHECK-GX-JSON-DAG: "%36": 10
# CHECK-GX-JSON-DAG: "%51": 6
# CHECK-GX-JSON-DAG: "%87": 0
# CHECK-GX-JSON-DAG: "%90": 0
# CHECK-GX-JSON-DAG: "%91": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 10
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 10
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%54:vgpr_32 = V_ADD_U32_e64 %92, %24, 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: "%7": 7
# CHECK-GX-JSON-DAG: "%9": 7
# CHECK-GX-JSON-DAG: "%24": 0
# CHECK-GX-JSON-DAG: "%36": 9
# CHECK-GX-JSON-DAG: "%51": 5
# CHECK-GX-JSON-DAG: "%92": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 9
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 9
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "S_BRANCH %bb.7",
# 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: "%7": 6
# CHECK-GX-JSON-DAG: "%9": 6
# CHECK-GX-JSON-DAG: "%36": 8
# CHECK-GX-JSON-DAG: "%51": 4
# CHECK-GX-JSON-DAG: "%54": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 8
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 8
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: }
# CHECK-GX-JSON-NEXT: ],
# CHECK-GX-JSON-NEXT: "bb.13": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%93:vgpr_32 = PHI %63, %bb.9, %71, %bb.10",
# 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: "%36": 4
# CHECK-GX-JSON-DAG: "%59": 3
# CHECK-GX-JSON-DAG: "%70": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 4
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 4
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "SI_END_CF %70, 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: "%36": 3
# CHECK-GX-JSON-DAG: "%59": 2
# CHECK-GX-JSON-DAG: "%70": 0
# CHECK-GX-JSON-DAG: "%93": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 3
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 3
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: }
# CHECK-GX-JSON-NEXT: ],
# CHECK-GX-JSON-NEXT: "bb.14": [
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "%94:vgpr_32 = PHI %52, %bb.7, %93, %bb.13",
# 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: "%36": 2
# CHECK-GX-JSON-DAG: "%59": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 2
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest-subreg": {
# CHECK-GX-JSON-DAG: "register": "%36",
# CHECK-GX-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-GX-JSON-DAG: "distance": 2
# CHECK-GX-JSON: }
# CHECK-GX-JSON-NEXT: },
# CHECK-GX-JSON-NEXT: {
# CHECK-GX-JSON-NEXT: "instr": "SI_END_CF %59, 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: "%36": 1
# CHECK-GX-JSON-DAG: "%59": 0
# CHECK-GX-JSON-DAG: "%94": 1
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "%95:vgpr_32 = V_ADD_U32_e64 %36, %94, 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: "%36": 0
# CHECK-GX-JSON-DAG: "%94": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "%96:sreg_32_xm0 = V_READFIRSTLANE_B32 %95, 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: "%95": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%95",
# 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": "%95",
# 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": "$sgpr0 = COPY %96",
# 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: "%96": 0
# CHECK-GX-JSON: },
# CHECK-GX-JSON-NEXT: "furthest": {
# CHECK-GX-JSON-DAG: "register": "%96",
# 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": "%96",
# 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": "SI_RETURN_TO_EPILOG killed $sgpr0",
# 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": 8,
# CHECK-GX-JSON-DAG: "%1": 5,
# CHECK-GX-JSON-DAG: "%2": 28,
# CHECK-GX-JSON-DAG: "%3": 2,
# CHECK-GX-JSON-DAG: "%4": 1,
# CHECK-GX-JSON-DAG: "%5": 6,
# CHECK-GX-JSON-DAG: "%6": 1,
# CHECK-GX-JSON-DAG: "%7": 19,
# CHECK-GX-JSON-DAG: "%8": 1,
# CHECK-GX-JSON-DAG: "%9": 1,
# CHECK-GX-JSON-DAG: "%10": 28,
# CHECK-GX-JSON-DAG: "%11": 2,
# CHECK-GX-JSON-DAG: "%12": 1,
# CHECK-GX-JSON-DAG: "%13": 4,
# CHECK-GX-JSON-DAG: "%14": 2,
# CHECK-GX-JSON-DAG: "%15": 1,
# CHECK-GX-JSON-DAG: "%16": 1,
# CHECK-GX-JSON-DAG: "%17": 8,
# CHECK-GX-JSON-DAG: "%18": 2,
# CHECK-GX-JSON-DAG: "%19": 1,
# CHECK-GX-JSON-DAG: "%20": 4,
# CHECK-GX-JSON-DAG: "%21": 2,
# CHECK-GX-JSON-DAG: "%22": 1,
# CHECK-GX-JSON-DAG: "%23": 1,
# CHECK-GX-JSON-DAG: "%24": 29,
# CHECK-GX-JSON-DAG: "%25": 3,
# CHECK-GX-JSON-DAG: "%26": 3,
# CHECK-GX-JSON-DAG: "%27": 1,
# CHECK-GX-JSON-DAG: "%28": 13,
# CHECK-GX-JSON-DAG: "%29": 4,
# CHECK-GX-JSON-DAG: "%30": 3,
# CHECK-GX-JSON-DAG: "%31": 3,
# CHECK-GX-JSON-DAG: "%32": 2,
# CHECK-GX-JSON-DAG: "%33": 2,
# CHECK-GX-JSON-DAG: "%34": 1,
# CHECK-GX-JSON-DAG: "%35": 1,
# CHECK-GX-JSON-DAG: "%36": 3,
# CHECK-GX-JSON-DAG: "%37": 4,
# CHECK-GX-JSON-DAG: "%38": 4,
# CHECK-GX-JSON-DAG: "%41": 3,
# CHECK-GX-JSON-DAG: "%43": 3,
# CHECK-GX-JSON-DAG: "%44": 1,
# CHECK-GX-JSON-DAG: "%45": 2,
# CHECK-GX-JSON-DAG: "%40": 2,
# CHECK-GX-JSON-DAG: "%46": 3,
# CHECK-GX-JSON-DAG: "%47": 1,
# CHECK-GX-JSON-DAG: "%48": 5,
# CHECK-GX-JSON-DAG: "%49": 1,
# CHECK-GX-JSON-DAG: "%50": 1,
# CHECK-GX-JSON-DAG: "%51": 5,
# CHECK-GX-JSON-DAG: "%52": 5,
# CHECK-GX-JSON-DAG: "%55": 8,
# CHECK-GX-JSON-DAG: "%57": 7,
# CHECK-GX-JSON-DAG: "%59": 3,
# CHECK-GX-JSON-DAG: "%60": 1,
# CHECK-GX-JSON-DAG: "%61": 1,
# CHECK-GX-JSON-DAG: "%62": 5,
# CHECK-GX-JSON-DAG: "%63": 5,
# CHECK-GX-JSON-DAG: "%66": 4,
# CHECK-GX-JSON-DAG: "%68": 3,
# CHECK-GX-JSON-DAG: "%70": 3,
# CHECK-GX-JSON-DAG: "%71": 2,
# CHECK-GX-JSON-DAG: "%65": 2,
# CHECK-GX-JSON-DAG: "%72": 1,
# CHECK-GX-JSON-DAG: "%73": 9,
# CHECK-GX-JSON-DAG: "%74": 1,
# CHECK-GX-JSON-DAG: "%75": 1,
# CHECK-GX-JSON-DAG: "%76": 1,
# CHECK-GX-JSON-DAG: "%77": 2,
# CHECK-GX-JSON-DAG: "%78": 1,
# CHECK-GX-JSON-DAG: "%79": 1,
# CHECK-GX-JSON-DAG: "%80": 1,
# CHECK-GX-JSON-DAG: "%81": 1,
# CHECK-GX-JSON-DAG: "%82": 1,
# CHECK-GX-JSON-DAG: "%83": 1,
# CHECK-GX-JSON-DAG: "%84": 1,
# CHECK-GX-JSON-DAG: "%85": 2,
# CHECK-GX-JSON-DAG: "%86": 1,
# CHECK-GX-JSON-DAG: "%87": 4,
# CHECK-GX-JSON-DAG: "%88": 1,
# CHECK-GX-JSON-DAG: "%89": 1,
# CHECK-GX-JSON-DAG: "%90": 2,
# CHECK-GX-JSON-DAG: "%91": 1,
# CHECK-GX-JSON-DAG: "%92": 1,
# CHECK-GX-JSON-DAG: "%54": 2,
# CHECK-GX-JSON-DAG: "%93": 2,
# CHECK-GX-JSON-DAG: "%94": 2,
# CHECK-GX-JSON-DAG: "%95": 1,
# CHECK-GX-JSON-DAG: "%96": 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 $vgpr4",
# 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 $vgpr3",
# 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: },
# 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": 7
# 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": 7
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%2:vgpr_32 = COPY $vgpr2",
# 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": 4
# 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": 6
# 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": 6
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%3: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-DAG: "%0": 5
# CHECK-CP-JSON-DAG: "%1": 3
# CHECK-CP-JSON-DAG: "%2": 26
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 26
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 26
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%4: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": 4
# CHECK-CP-JSON-DAG: "%1": 2
# CHECK-CP-JSON-DAG: "%2": 25
# CHECK-CP-JSON-DAG: "%3": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 25
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 25
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%5:vreg_64 = REG_SEQUENCE %4, %subreg.sub0, %3, %subreg.sub1",
# 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": 1
# CHECK-CP-JSON-DAG: "%2": 24
# CHECK-CP-JSON-DAG: "%3": 0
# CHECK-CP-JSON-DAG: "%4": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 24
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 24
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%6:vgpr_32 = V_AND_B32_e64 1, %1, 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": 2
# CHECK-CP-JSON-DAG: "%1": 0
# CHECK-CP-JSON-DAG: "%2": 23
# CHECK-CP-JSON-DAG: "%5": 5
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 23
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 23
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%7:sreg_32 = V_CMP_EQ_U32_e64 1, %6, 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: "%2": 22
# CHECK-CP-JSON-DAG: "%5": 4
# CHECK-CP-JSON-DAG: "%6": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 22
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 22
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%8:vgpr_32 = V_AND_B32_e64 1, %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: "%2": 21
# CHECK-CP-JSON-DAG: "%5": 3
# CHECK-CP-JSON-DAG: "%7": 18
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 21
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 21
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%9:sreg_32 = V_CMP_EQ_U32_e64 1, %8, 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: "%2": 20
# CHECK-CP-JSON-DAG: "%5": 2
# CHECK-CP-JSON-DAG: "%7": 17
# CHECK-CP-JSON-DAG: "%8": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 20
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 20
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%10:sreg_32 = S_XOR_B32 %9, -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: "%2": 19
# CHECK-CP-JSON-DAG: "%5": 1
# CHECK-CP-JSON-DAG: "%7": 16
# CHECK-CP-JSON-DAG: "%9": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 19
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%2",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 19
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%11:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 0, 0, implicit $exec :: (load (s8) from %ir.p1, addrspace 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: "%2": 18
# CHECK-CP-JSON-DAG: "%5": 0
# CHECK-CP-JSON-DAG: "%7": 15
# CHECK-CP-JSON-DAG: "%9": 33
# CHECK-CP-JSON-DAG: "%10": 26
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 33
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 33
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%12:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 1, 0, implicit $exec :: (load (s8) from %ir.p1 + 1, addrspace 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: "%2": 17
# CHECK-CP-JSON-DAG: "%5": 0
# CHECK-CP-JSON-DAG: "%7": 14
# CHECK-CP-JSON-DAG: "%9": 32
# CHECK-CP-JSON-DAG: "%10": 25
# CHECK-CP-JSON-DAG: "%11": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 32
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 32
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%13:vgpr_32 = V_LSHL_OR_B32_e64 %12, 8, %11, 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: "%2": 16
# CHECK-CP-JSON-DAG: "%5": 1
# CHECK-CP-JSON-DAG: "%7": 13
# CHECK-CP-JSON-DAG: "%9": 31
# CHECK-CP-JSON-DAG: "%10": 24
# CHECK-CP-JSON-DAG: "%11": 0
# CHECK-CP-JSON-DAG: "%12": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 31
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 31
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%14:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 2, 0, implicit $exec :: (load (s8) from %ir.p1 + 2, addrspace 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: "%2": 15
# CHECK-CP-JSON-DAG: "%5": 0
# CHECK-CP-JSON-DAG: "%7": 12
# CHECK-CP-JSON-DAG: "%9": 30
# CHECK-CP-JSON-DAG: "%10": 23
# CHECK-CP-JSON-DAG: "%13": 3
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 30
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 30
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%15:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 3, 0, implicit $exec :: (load (s8) from %ir.p1 + 3, addrspace 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: "%2": 14
# CHECK-CP-JSON-DAG: "%5": 0
# CHECK-CP-JSON-DAG: "%7": 11
# CHECK-CP-JSON-DAG: "%9": 29
# CHECK-CP-JSON-DAG: "%10": 22
# CHECK-CP-JSON-DAG: "%13": 2
# CHECK-CP-JSON-DAG: "%14": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 29
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 29
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%16: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: "%2": 13
# CHECK-CP-JSON-DAG: "%5": 2
# CHECK-CP-JSON-DAG: "%7": 10
# CHECK-CP-JSON-DAG: "%9": 28
# CHECK-CP-JSON-DAG: "%10": 21
# CHECK-CP-JSON-DAG: "%13": 1
# CHECK-CP-JSON-DAG: "%14": 0
# CHECK-CP-JSON-DAG: "%15": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 28
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 28
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%17:vgpr_32 = V_LSHL_OR_B32_e64 %16, 16, %13, 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: "%2": 12
# CHECK-CP-JSON-DAG: "%5": 1
# CHECK-CP-JSON-DAG: "%7": 9
# CHECK-CP-JSON-DAG: "%9": 27
# CHECK-CP-JSON-DAG: "%10": 20
# CHECK-CP-JSON-DAG: "%13": 0
# CHECK-CP-JSON-DAG: "%16": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 27
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 27
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%18:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 12, 0, implicit $exec :: (load (s8) from %ir.gep1, addrspace 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: "%2": 11
# CHECK-CP-JSON-DAG: "%5": 0
# CHECK-CP-JSON-DAG: "%7": 8
# CHECK-CP-JSON-DAG: "%9": 26
# CHECK-CP-JSON-DAG: "%10": 19
# CHECK-CP-JSON-DAG: "%17": 7
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 26
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 26
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%19:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 13, 0, implicit $exec :: (load (s8) from %ir.gep1 + 1, addrspace 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: "%2": 10
# CHECK-CP-JSON-DAG: "%5": 0
# CHECK-CP-JSON-DAG: "%7": 7
# CHECK-CP-JSON-DAG: "%9": 25
# CHECK-CP-JSON-DAG: "%10": 18
# CHECK-CP-JSON-DAG: "%17": 6
# CHECK-CP-JSON-DAG: "%18": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 25
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 25
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%20:vgpr_32 = V_LSHL_OR_B32_e64 %19, 8, %18, 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: "%2": 9
# CHECK-CP-JSON-DAG: "%5": 1
# CHECK-CP-JSON-DAG: "%7": 6
# CHECK-CP-JSON-DAG: "%9": 24
# CHECK-CP-JSON-DAG: "%10": 17
# CHECK-CP-JSON-DAG: "%17": 5
# CHECK-CP-JSON-DAG: "%18": 0
# CHECK-CP-JSON-DAG: "%19": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 24
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 24
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%21:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 14, 0, implicit $exec :: (load (s8) from %ir.gep1 + 2, addrspace 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: "%2": 8
# CHECK-CP-JSON-DAG: "%5": 0
# CHECK-CP-JSON-DAG: "%7": 5
# CHECK-CP-JSON-DAG: "%9": 23
# CHECK-CP-JSON-DAG: "%10": 16
# CHECK-CP-JSON-DAG: "%17": 4
# CHECK-CP-JSON-DAG: "%20": 3
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 23
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 23
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%22:vgpr_32 = GLOBAL_LOAD_UBYTE %5, 15, 0, implicit $exec :: (load (s8) from %ir.gep1 + 3, addrspace 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: "%2": 7
# CHECK-CP-JSON-DAG: "%5": 0
# CHECK-CP-JSON-DAG: "%7": 4
# CHECK-CP-JSON-DAG: "%9": 22
# CHECK-CP-JSON-DAG: "%10": 15
# CHECK-CP-JSON-DAG: "%17": 3
# CHECK-CP-JSON-DAG: "%20": 2
# CHECK-CP-JSON-DAG: "%21": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 22
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 22
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%23:vgpr_32 = V_LSHL_OR_B32_e64 %22, 8, %21, 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: "%2": 6
# CHECK-CP-JSON-DAG: "%7": 3
# CHECK-CP-JSON-DAG: "%9": 21
# CHECK-CP-JSON-DAG: "%10": 14
# CHECK-CP-JSON-DAG: "%17": 2
# CHECK-CP-JSON-DAG: "%20": 1
# CHECK-CP-JSON-DAG: "%21": 0
# CHECK-CP-JSON-DAG: "%22": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 21
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 21
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%24:vgpr_32 = V_LSHL_OR_B32_e64 %23, 16, %20, 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: "%2": 5
# CHECK-CP-JSON-DAG: "%7": 2
# CHECK-CP-JSON-DAG: "%9": 20
# CHECK-CP-JSON-DAG: "%10": 13
# CHECK-CP-JSON-DAG: "%17": 1
# CHECK-CP-JSON-DAG: "%20": 0
# CHECK-CP-JSON-DAG: "%23": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 20
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%9",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 20
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%25:vgpr_32 = V_ADD_U32_e64 100, %17, 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: "%2": 4
# CHECK-CP-JSON-DAG: "%7": 1
# CHECK-CP-JSON-DAG: "%9": 19
# CHECK-CP-JSON-DAG: "%10": 12
# CHECK-CP-JSON-DAG: "%17": 0
# CHECK-CP-JSON-DAG: "%24": 22
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 22
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 22
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%26:sreg_32 = SI_IF %7, %bb.2, 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: "%2": 3
# CHECK-CP-JSON-DAG: "%7": 0
# CHECK-CP-JSON-DAG: "%9": 18
# CHECK-CP-JSON-DAG: "%10": 11
# CHECK-CP-JSON-DAG: "%17": 13
# CHECK-CP-JSON-DAG: "%24": 21
# CHECK-CP-JSON-DAG: "%25": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 21
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 21
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %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: "%2": 2
# CHECK-CP-JSON-DAG: "%7": 17
# CHECK-CP-JSON-DAG: "%9": 17
# CHECK-CP-JSON-DAG: "%10": 10
# CHECK-CP-JSON-DAG: "%17": 12
# CHECK-CP-JSON-DAG: "%24": 20
# CHECK-CP-JSON-DAG: "%25": 0
# CHECK-CP-JSON-DAG: "%26": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 20
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 20
# 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": "%27: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: "%2": 2
# CHECK-CP-JSON-DAG: "%7": 17
# CHECK-CP-JSON-DAG: "%9": 17
# CHECK-CP-JSON-DAG: "%10": 10
# CHECK-CP-JSON-DAG: "%17": 12
# CHECK-CP-JSON-DAG: "%24": 20
# CHECK-CP-JSON-DAG: "%26": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 20
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 20
# 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": "%28:vgpr_32 = PHI %25, %bb.0, %27, %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: "%2": 1
# CHECK-CP-JSON-DAG: "%7": 16
# CHECK-CP-JSON-DAG: "%9": 16
# CHECK-CP-JSON-DAG: "%10": 9
# CHECK-CP-JSON-DAG: "%17": 11
# CHECK-CP-JSON-DAG: "%24": 19
# CHECK-CP-JSON-DAG: "%26": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 19
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 19
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "SI_END_CF %26, 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: "%2": 1
# CHECK-CP-JSON-DAG: "%7": 16
# CHECK-CP-JSON-DAG: "%9": 16
# CHECK-CP-JSON-DAG: "%10": 9
# CHECK-CP-JSON-DAG: "%17": 11
# CHECK-CP-JSON-DAG: "%24": 19
# CHECK-CP-JSON-DAG: "%26": 0
# CHECK-CP-JSON-DAG: "%28": 10
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 19
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 19
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%29:vgpr_32 = DS_READ_U8_gfx9 %2, 0, 0, implicit $exec :: (load (s8) from %ir.p2, 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: "%2": 0
# CHECK-CP-JSON-DAG: "%7": 15
# CHECK-CP-JSON-DAG: "%9": 15
# CHECK-CP-JSON-DAG: "%10": 8
# CHECK-CP-JSON-DAG: "%17": 10
# CHECK-CP-JSON-DAG: "%24": 18
# CHECK-CP-JSON-DAG: "%28": 9
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 18
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 18
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%30:vgpr_32 = DS_READ_U8_gfx9 %2, 1, 0, implicit $exec :: (load (s8) from %ir.p2 + 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: "%2": 0
# CHECK-CP-JSON-DAG: "%7": 14
# CHECK-CP-JSON-DAG: "%9": 14
# CHECK-CP-JSON-DAG: "%10": 7
# CHECK-CP-JSON-DAG: "%17": 9
# CHECK-CP-JSON-DAG: "%24": 17
# CHECK-CP-JSON-DAG: "%28": 8
# CHECK-CP-JSON-DAG: "%29": 3
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 17
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 17
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%31:vgpr_32 = DS_READ_U8_gfx9 %2, 2, 0, implicit $exec :: (load (s8) from %ir.p2 + 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: "%2": 0
# CHECK-CP-JSON-DAG: "%7": 13
# CHECK-CP-JSON-DAG: "%9": 13
# CHECK-CP-JSON-DAG: "%10": 6
# CHECK-CP-JSON-DAG: "%17": 8
# CHECK-CP-JSON-DAG: "%24": 16
# CHECK-CP-JSON-DAG: "%28": 7
# CHECK-CP-JSON-DAG: "%29": 2
# CHECK-CP-JSON-DAG: "%30": 2
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 16
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 16
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%32:vgpr_32 = DS_READ_U8_gfx9 %2, 3, 0, implicit $exec :: (load (s8) from %ir.p2 + 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: "%2": 0
# CHECK-CP-JSON-DAG: "%7": 12
# CHECK-CP-JSON-DAG: "%9": 12
# CHECK-CP-JSON-DAG: "%10": 5
# CHECK-CP-JSON-DAG: "%17": 7
# CHECK-CP-JSON-DAG: "%24": 15
# CHECK-CP-JSON-DAG: "%28": 6
# CHECK-CP-JSON-DAG: "%29": 1
# CHECK-CP-JSON-DAG: "%30": 1
# CHECK-CP-JSON-DAG: "%31": 2
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 15
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 15
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%33:vgpr_32 = V_LSHL_OR_B32_e64 %30, 8, %29, 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: "%2": 9
# CHECK-CP-JSON-DAG: "%7": 11
# CHECK-CP-JSON-DAG: "%9": 11
# CHECK-CP-JSON-DAG: "%10": 4
# CHECK-CP-JSON-DAG: "%17": 6
# CHECK-CP-JSON-DAG: "%24": 14
# CHECK-CP-JSON-DAG: "%28": 5
# CHECK-CP-JSON-DAG: "%29": 0
# CHECK-CP-JSON-DAG: "%30": 0
# CHECK-CP-JSON-DAG: "%31": 1
# CHECK-CP-JSON-DAG: "%32": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 14
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 14
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%34:vgpr_32 = V_LSHL_OR_B32_e64 %32, 8, %31, 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: "%2": 8
# CHECK-CP-JSON-DAG: "%7": 10
# CHECK-CP-JSON-DAG: "%9": 10
# CHECK-CP-JSON-DAG: "%10": 3
# CHECK-CP-JSON-DAG: "%17": 5
# CHECK-CP-JSON-DAG: "%24": 13
# CHECK-CP-JSON-DAG: "%28": 4
# CHECK-CP-JSON-DAG: "%31": 0
# CHECK-CP-JSON-DAG: "%32": 0
# CHECK-CP-JSON-DAG: "%33": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 13
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 13
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%35:vgpr_32 = V_LSHL_OR_B32_e64 %34, 16, %33, 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: "%2": 7
# CHECK-CP-JSON-DAG: "%7": 9
# CHECK-CP-JSON-DAG: "%9": 9
# CHECK-CP-JSON-DAG: "%10": 2
# CHECK-CP-JSON-DAG: "%17": 4
# CHECK-CP-JSON-DAG: "%24": 12
# CHECK-CP-JSON-DAG: "%28": 3
# CHECK-CP-JSON-DAG: "%33": 0
# CHECK-CP-JSON-DAG: "%34": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%36:vgpr_32 = V_ADD_U32_e64 100, %35, 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: "%2": 6
# CHECK-CP-JSON-DAG: "%7": 8
# CHECK-CP-JSON-DAG: "%9": 8
# CHECK-CP-JSON-DAG: "%10": 1
# CHECK-CP-JSON-DAG: "%17": 3
# CHECK-CP-JSON-DAG: "%24": 11
# CHECK-CP-JSON-DAG: "%28": 2
# CHECK-CP-JSON-DAG: "%35": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 11
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%24",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 11
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%37:sreg_32 = SI_IF %10, %bb.3, 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: "%2": 5
# CHECK-CP-JSON-DAG: "%7": 7
# CHECK-CP-JSON-DAG: "%9": 7
# CHECK-CP-JSON-DAG: "%10": 0
# CHECK-CP-JSON-DAG: "%17": 2
# CHECK-CP-JSON-DAG: "%24": 10
# CHECK-CP-JSON-DAG: "%28": 1
# CHECK-CP-JSON-DAG: "%35": 12
# CHECK-CP-JSON-DAG: "%36": 2
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%35",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%35",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.5",
# 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: "%2": 4
# CHECK-CP-JSON-DAG: "%7": 6
# CHECK-CP-JSON-DAG: "%9": 6
# CHECK-CP-JSON-DAG: "%17": 1
# CHECK-CP-JSON-DAG: "%24": 9
# CHECK-CP-JSON-DAG: "%28": 0
# CHECK-CP-JSON-DAG: "%35": 11
# CHECK-CP-JSON-DAG: "%36": 1
# CHECK-CP-JSON-DAG: "%37": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%35",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 11
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%35",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 11
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.3": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%38:vgpr_32 = PHI undef %39:vgpr_32, %bb.2, %40, %bb.5",
# 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: "%2": 3
# CHECK-CP-JSON-DAG: "%7": 5
# CHECK-CP-JSON-DAG: "%9": 5
# CHECK-CP-JSON-DAG: "%17": 2
# CHECK-CP-JSON-DAG: "%24": 8
# CHECK-CP-JSON-DAG: "%35": 10
# CHECK-CP-JSON-DAG: "%36": 12
# CHECK-CP-JSON-DAG: "%37": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%41:vgpr_32 = PHI %28, %bb.2, undef %42:vgpr_32, %bb.5",
# 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: "%2": 3
# CHECK-CP-JSON-DAG: "%7": 5
# CHECK-CP-JSON-DAG: "%9": 5
# CHECK-CP-JSON-DAG: "%17": 2
# CHECK-CP-JSON-DAG: "%24": 8
# CHECK-CP-JSON-DAG: "%35": 10
# CHECK-CP-JSON-DAG: "%36": 12
# CHECK-CP-JSON-DAG: "%37": 0
# CHECK-CP-JSON-DAG: "%38": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%43:sreg_32 = SI_ELSE %37, %bb.6, 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: "%2": 3
# CHECK-CP-JSON-DAG: "%7": 5
# CHECK-CP-JSON-DAG: "%9": 5
# CHECK-CP-JSON-DAG: "%17": 2
# CHECK-CP-JSON-DAG: "%24": 8
# CHECK-CP-JSON-DAG: "%35": 10
# CHECK-CP-JSON-DAG: "%36": 12
# CHECK-CP-JSON-DAG: "%37": 0
# CHECK-CP-JSON-DAG: "%38": 1
# CHECK-CP-JSON-DAG: "%41": 2
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.4",
# 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: "%2": 2
# CHECK-CP-JSON-DAG: "%7": 4
# CHECK-CP-JSON-DAG: "%9": 4
# CHECK-CP-JSON-DAG: "%17": 1
# CHECK-CP-JSON-DAG: "%24": 7
# CHECK-CP-JSON-DAG: "%35": 9
# CHECK-CP-JSON-DAG: "%36": 11
# CHECK-CP-JSON-DAG: "%38": 0
# CHECK-CP-JSON-DAG: "%41": 1
# CHECK-CP-JSON-DAG: "%43": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 11
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 11
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.4": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%44:vreg_64, $sgpr_null = V_MAD_U64_U32_e64 %17, %41, 1000, 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: "%2": 4
# CHECK-CP-JSON-DAG: "%7": 6
# CHECK-CP-JSON-DAG: "%9": 6
# CHECK-CP-JSON-DAG: "%17": 0
# CHECK-CP-JSON-DAG: "%24": 9
# CHECK-CP-JSON-DAG: "%35": 11
# CHECK-CP-JSON-DAG: "%36": 13
# CHECK-CP-JSON-DAG: "%41": 0
# CHECK-CP-JSON-DAG: "%43": 3
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 13
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 13
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%45:vgpr_32 = COPY %44.sub0",
# 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: "%2": 3
# CHECK-CP-JSON-DAG: "%7": 5
# CHECK-CP-JSON-DAG: "%9": 5
# CHECK-CP-JSON-DAG: "%17": 11
# CHECK-CP-JSON-DAG: "%24": 8
# CHECK-CP-JSON-DAG: "%35": 10
# CHECK-CP-JSON-DAG: "%36": 12
# CHECK-CP-JSON-DAG: "%43": 2
# CHECK-CP-JSON-DAG: "%44:sub0": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.6",
# 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: "%2": 2
# CHECK-CP-JSON-DAG: "%7": 4
# CHECK-CP-JSON-DAG: "%9": 4
# CHECK-CP-JSON-DAG: "%17": 10
# CHECK-CP-JSON-DAG: "%24": 7
# CHECK-CP-JSON-DAG: "%35": 9
# CHECK-CP-JSON-DAG: "%36": 11
# CHECK-CP-JSON-DAG: "%43": 1
# CHECK-CP-JSON-DAG: "%45": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 11
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 11
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.5": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%40:vgpr_32 = V_ADD_U32_e64 %36, %17, 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: "%2": 5
# CHECK-CP-JSON-DAG: "%7": 7
# CHECK-CP-JSON-DAG: "%9": 7
# CHECK-CP-JSON-DAG: "%17": 0
# CHECK-CP-JSON-DAG: "%24": 10
# CHECK-CP-JSON-DAG: "%35": 12
# CHECK-CP-JSON-DAG: "%36": 0
# CHECK-CP-JSON-DAG: "%37": 2
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%35",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%35",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.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: "%2": 4
# CHECK-CP-JSON-DAG: "%7": 6
# CHECK-CP-JSON-DAG: "%9": 6
# CHECK-CP-JSON-DAG: "%17": 3
# CHECK-CP-JSON-DAG: "%24": 9
# CHECK-CP-JSON-DAG: "%35": 11
# CHECK-CP-JSON-DAG: "%36": 13
# CHECK-CP-JSON-DAG: "%37": 1
# CHECK-CP-JSON-DAG: "%40": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 13
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 13
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.6": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%46:vgpr_32 = PHI %38, %bb.3, %45, %bb.4",
# 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: "%2": 1
# CHECK-CP-JSON-DAG: "%7": 3
# CHECK-CP-JSON-DAG: "%9": 3
# CHECK-CP-JSON-DAG: "%17": 9
# CHECK-CP-JSON-DAG: "%24": 6
# CHECK-CP-JSON-DAG: "%35": 8
# CHECK-CP-JSON-DAG: "%36": 10
# CHECK-CP-JSON-DAG: "%43": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 10
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 10
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "SI_END_CF %43, 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: "%2": 1
# CHECK-CP-JSON-DAG: "%7": 3
# CHECK-CP-JSON-DAG: "%9": 3
# CHECK-CP-JSON-DAG: "%17": 9
# CHECK-CP-JSON-DAG: "%24": 6
# CHECK-CP-JSON-DAG: "%35": 8
# CHECK-CP-JSON-DAG: "%36": 10
# CHECK-CP-JSON-DAG: "%43": 0
# CHECK-CP-JSON-DAG: "%46": 2
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 10
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 10
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%47:vgpr_32 = DS_READ_B32_gfx9 %2, 12, 0, implicit $exec :: (load (s32) from %ir.gep2, align 8, 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: "%2": 0
# CHECK-CP-JSON-DAG: "%7": 2
# CHECK-CP-JSON-DAG: "%9": 2
# CHECK-CP-JSON-DAG: "%17": 8
# CHECK-CP-JSON-DAG: "%24": 5
# CHECK-CP-JSON-DAG: "%35": 7
# CHECK-CP-JSON-DAG: "%36": 9
# CHECK-CP-JSON-DAG: "%46": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 9
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 9
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%48:vgpr_32 = V_ADD_U32_e64 %47, %46, 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: "%7": 1
# CHECK-CP-JSON-DAG: "%9": 1
# CHECK-CP-JSON-DAG: "%17": 7
# CHECK-CP-JSON-DAG: "%24": 4
# CHECK-CP-JSON-DAG: "%35": 6
# CHECK-CP-JSON-DAG: "%36": 8
# CHECK-CP-JSON-DAG: "%46": 0
# CHECK-CP-JSON-DAG: "%47": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 8
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 8
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%49:sreg_32 = S_XOR_B32 %7, %9, 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: "%7": 0
# CHECK-CP-JSON-DAG: "%9": 0
# CHECK-CP-JSON-DAG: "%17": 6
# CHECK-CP-JSON-DAG: "%24": 3
# CHECK-CP-JSON-DAG: "%35": 5
# CHECK-CP-JSON-DAG: "%36": 7
# CHECK-CP-JSON-DAG: "%47": 4
# CHECK-CP-JSON-DAG: "%48": 3
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 7
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 7
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%50:sreg_32 = S_XOR_B32 %49, -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: "%7": 5
# CHECK-CP-JSON-DAG: "%9": 5
# CHECK-CP-JSON-DAG: "%17": 5
# CHECK-CP-JSON-DAG: "%24": 2
# CHECK-CP-JSON-DAG: "%35": 4
# CHECK-CP-JSON-DAG: "%36": 6
# CHECK-CP-JSON-DAG: "%47": 3
# CHECK-CP-JSON-DAG: "%48": 2
# CHECK-CP-JSON-DAG: "%49": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 6
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 6
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%51:sreg_32 = SI_IF %50, %bb.7, 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: "%7": 4
# CHECK-CP-JSON-DAG: "%9": 4
# CHECK-CP-JSON-DAG: "%17": 4
# CHECK-CP-JSON-DAG: "%24": 1
# CHECK-CP-JSON-DAG: "%35": 3
# CHECK-CP-JSON-DAG: "%36": 5
# CHECK-CP-JSON-DAG: "%47": 2
# CHECK-CP-JSON-DAG: "%48": 1
# CHECK-CP-JSON-DAG: "%50": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.12",
# 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: "%7": 3
# CHECK-CP-JSON-DAG: "%9": 3
# CHECK-CP-JSON-DAG: "%17": 3
# CHECK-CP-JSON-DAG: "%24": 0
# CHECK-CP-JSON-DAG: "%35": 2
# CHECK-CP-JSON-DAG: "%36": 4
# CHECK-CP-JSON-DAG: "%47": 1
# CHECK-CP-JSON-DAG: "%48": 0
# CHECK-CP-JSON-DAG: "%51": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.7": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%52:vgpr_32 = PHI undef %53:vgpr_32, %bb.6, %54, %bb.12",
# 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: "%7": 2
# CHECK-CP-JSON-DAG: "%9": 2
# CHECK-CP-JSON-DAG: "%36": 3
# CHECK-CP-JSON-DAG: "%51": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 3
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 3
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%55:vgpr_32 = PHI %24, %bb.6, undef %56:vgpr_32, %bb.12",
# 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: "%7": 2
# CHECK-CP-JSON-DAG: "%9": 2
# CHECK-CP-JSON-DAG: "%36": 3
# CHECK-CP-JSON-DAG: "%51": 0
# CHECK-CP-JSON-DAG: "%52": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 3
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 3
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%57:vgpr_32 = PHI %48, %bb.6, undef %58:vgpr_32, %bb.12",
# 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: "%7": 2
# CHECK-CP-JSON-DAG: "%9": 2
# CHECK-CP-JSON-DAG: "%36": 3
# CHECK-CP-JSON-DAG: "%51": 0
# CHECK-CP-JSON-DAG: "%52": 1
# CHECK-CP-JSON-DAG: "%55": 5
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%55",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%55",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%59:sreg_32 = SI_ELSE %51, %bb.14, 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: "%7": 2
# CHECK-CP-JSON-DAG: "%9": 2
# CHECK-CP-JSON-DAG: "%36": 3
# CHECK-CP-JSON-DAG: "%51": 0
# CHECK-CP-JSON-DAG: "%52": 1
# CHECK-CP-JSON-DAG: "%55": 5
# CHECK-CP-JSON-DAG: "%57": 5
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%55",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%55",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.8",
# 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: "%7": 1
# CHECK-CP-JSON-DAG: "%9": 1
# CHECK-CP-JSON-DAG: "%36": 2
# CHECK-CP-JSON-DAG: "%52": 0
# CHECK-CP-JSON-DAG: "%55": 4
# CHECK-CP-JSON-DAG: "%57": 4
# CHECK-CP-JSON-DAG: "%59": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%55",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%55",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.8": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%60:sreg_32 = S_AND_B32 %7, %9, 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: "%7": 0
# CHECK-CP-JSON-DAG: "%9": 0
# CHECK-CP-JSON-DAG: "%36": 8
# CHECK-CP-JSON-DAG: "%55": 3
# CHECK-CP-JSON-DAG: "%57": 3
# CHECK-CP-JSON-DAG: "%59": 7
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 8
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 8
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%61:sreg_32 = S_XOR_B32 %60, -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: "%36": 7
# CHECK-CP-JSON-DAG: "%55": 2
# CHECK-CP-JSON-DAG: "%57": 2
# CHECK-CP-JSON-DAG: "%59": 6
# CHECK-CP-JSON-DAG: "%60": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 7
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 7
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%62:sreg_32 = SI_IF %61, %bb.9, 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: "%36": 6
# CHECK-CP-JSON-DAG: "%55": 1
# CHECK-CP-JSON-DAG: "%57": 1
# CHECK-CP-JSON-DAG: "%59": 5
# CHECK-CP-JSON-DAG: "%61": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 6
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 6
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.11",
# 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: "%36": 5
# CHECK-CP-JSON-DAG: "%55": 0
# CHECK-CP-JSON-DAG: "%57": 0
# CHECK-CP-JSON-DAG: "%59": 4
# CHECK-CP-JSON-DAG: "%62": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.9": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%63:vgpr_32 = PHI undef %64:vgpr_32, %bb.8, %65, %bb.11",
# 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: "%36": 4
# CHECK-CP-JSON-DAG: "%59": 3
# CHECK-CP-JSON-DAG: "%62": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%66:vgpr_32 = PHI %55, %bb.8, undef %67:vgpr_32, %bb.11",
# 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: "%36": 4
# CHECK-CP-JSON-DAG: "%59": 3
# CHECK-CP-JSON-DAG: "%62": 0
# CHECK-CP-JSON-DAG: "%63": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%68:vgpr_32 = PHI %57, %bb.8, undef %69:vgpr_32, %bb.11",
# 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: "%36": 4
# CHECK-CP-JSON-DAG: "%59": 3
# CHECK-CP-JSON-DAG: "%62": 0
# CHECK-CP-JSON-DAG: "%63": 1
# CHECK-CP-JSON-DAG: "%66": 2
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%70:sreg_32 = SI_ELSE %62, %bb.13, 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: "%36": 4
# CHECK-CP-JSON-DAG: "%59": 3
# CHECK-CP-JSON-DAG: "%62": 0
# CHECK-CP-JSON-DAG: "%63": 1
# CHECK-CP-JSON-DAG: "%66": 2
# CHECK-CP-JSON-DAG: "%68": 2
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.10",
# 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: "%36": 3
# CHECK-CP-JSON-DAG: "%59": 2
# CHECK-CP-JSON-DAG: "%63": 0
# CHECK-CP-JSON-DAG: "%66": 1
# CHECK-CP-JSON-DAG: "%68": 1
# CHECK-CP-JSON-DAG: "%70": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 3
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 3
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.10": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%71:vgpr_32 = V_ADD_U32_e64 %66, %68, 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: "%36": 4
# CHECK-CP-JSON-DAG: "%59": 3
# CHECK-CP-JSON-DAG: "%66": 0
# CHECK-CP-JSON-DAG: "%68": 0
# CHECK-CP-JSON-DAG: "%70": 2
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.13",
# 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: "%36": 3
# CHECK-CP-JSON-DAG: "%59": 2
# CHECK-CP-JSON-DAG: "%70": 1
# CHECK-CP-JSON-DAG: "%71": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 3
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 3
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.11": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%65:vgpr_32 = V_MUL_LO_U32_e64 %55, %57, 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: "%36": 6
# CHECK-CP-JSON-DAG: "%55": 0
# CHECK-CP-JSON-DAG: "%57": 0
# CHECK-CP-JSON-DAG: "%59": 5
# CHECK-CP-JSON-DAG: "%62": 2
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 6
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 6
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.9",
# 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: "%36": 5
# CHECK-CP-JSON-DAG: "%59": 4
# CHECK-CP-JSON-DAG: "%62": 1
# CHECK-CP-JSON-DAG: "%65": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.12": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%72:vgpr_32 = V_SUB_U32_e64 %47, %48, 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: "%7": 25
# CHECK-CP-JSON-DAG: "%9": 25
# CHECK-CP-JSON-DAG: "%17": 2
# CHECK-CP-JSON-DAG: "%24": 21
# CHECK-CP-JSON-DAG: "%35": 1
# CHECK-CP-JSON-DAG: "%36": 26
# CHECK-CP-JSON-DAG: "%47": 0
# CHECK-CP-JSON-DAG: "%48": 0
# CHECK-CP-JSON-DAG: "%51": 23
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 26
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 26
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%73:vgpr_32 = V_MUL_LO_U32_e64 %72, %35, 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: "%7": 24
# CHECK-CP-JSON-DAG: "%9": 24
# CHECK-CP-JSON-DAG: "%17": 1
# CHECK-CP-JSON-DAG: "%24": 20
# CHECK-CP-JSON-DAG: "%35": 0
# CHECK-CP-JSON-DAG: "%36": 25
# CHECK-CP-JSON-DAG: "%51": 22
# CHECK-CP-JSON-DAG: "%72": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 25
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 25
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%74:vgpr_32 = V_CVT_F32_U32_e64 %17, 0, 0, implicit $mode, 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: "%7": 23
# CHECK-CP-JSON-DAG: "%9": 23
# CHECK-CP-JSON-DAG: "%17": 0
# CHECK-CP-JSON-DAG: "%24": 19
# CHECK-CP-JSON-DAG: "%36": 24
# CHECK-CP-JSON-DAG: "%51": 21
# CHECK-CP-JSON-DAG: "%73": 8
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 24
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 24
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%75:vgpr_32 = nofpexcept V_RCP_IFLAG_F32_e64 0, %74, 0, 0, implicit $mode, 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: "%7": 22
# CHECK-CP-JSON-DAG: "%9": 22
# CHECK-CP-JSON-DAG: "%17": 3
# CHECK-CP-JSON-DAG: "%24": 18
# CHECK-CP-JSON-DAG: "%36": 23
# CHECK-CP-JSON-DAG: "%51": 20
# CHECK-CP-JSON-DAG: "%73": 7
# CHECK-CP-JSON-DAG: "%74": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 23
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 23
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%76:vgpr_32 = nnan ninf nsz arcp contract afn reassoc nofpexcept V_MUL_F32_e64 0, 1333788670, 0, %75, 0, 0, implicit $mode, 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: "%7": 21
# CHECK-CP-JSON-DAG: "%9": 21
# CHECK-CP-JSON-DAG: "%17": 2
# CHECK-CP-JSON-DAG: "%24": 17
# CHECK-CP-JSON-DAG: "%36": 22
# CHECK-CP-JSON-DAG: "%51": 19
# CHECK-CP-JSON-DAG: "%73": 6
# CHECK-CP-JSON-DAG: "%75": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 22
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 22
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%77:vgpr_32 = nofpexcept V_CVT_U32_F32_e64 0, %76, 0, 0, implicit $mode, 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: "%7": 20
# CHECK-CP-JSON-DAG: "%9": 20
# CHECK-CP-JSON-DAG: "%17": 1
# CHECK-CP-JSON-DAG: "%24": 16
# CHECK-CP-JSON-DAG: "%36": 21
# CHECK-CP-JSON-DAG: "%51": 18
# CHECK-CP-JSON-DAG: "%73": 5
# CHECK-CP-JSON-DAG: "%76": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 21
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 21
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%78:vgpr_32 = V_SUB_U32_e64 0, %17, 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: "%7": 19
# CHECK-CP-JSON-DAG: "%9": 19
# CHECK-CP-JSON-DAG: "%17": 0
# CHECK-CP-JSON-DAG: "%24": 15
# CHECK-CP-JSON-DAG: "%36": 20
# CHECK-CP-JSON-DAG: "%51": 17
# CHECK-CP-JSON-DAG: "%73": 4
# CHECK-CP-JSON-DAG: "%77": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 20
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 20
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%79:vgpr_32 = V_MUL_LO_U32_e64 %78, %77, 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: "%7": 18
# CHECK-CP-JSON-DAG: "%9": 18
# CHECK-CP-JSON-DAG: "%17": 4
# CHECK-CP-JSON-DAG: "%24": 14
# CHECK-CP-JSON-DAG: "%36": 19
# CHECK-CP-JSON-DAG: "%51": 16
# CHECK-CP-JSON-DAG: "%73": 3
# CHECK-CP-JSON-DAG: "%77": 0
# CHECK-CP-JSON-DAG: "%78": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 19
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 19
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%80:vgpr_32 = V_MUL_HI_U32_e64 %77, %79, 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: "%7": 17
# CHECK-CP-JSON-DAG: "%9": 17
# CHECK-CP-JSON-DAG: "%17": 3
# CHECK-CP-JSON-DAG: "%24": 13
# CHECK-CP-JSON-DAG: "%36": 18
# CHECK-CP-JSON-DAG: "%51": 15
# CHECK-CP-JSON-DAG: "%73": 2
# CHECK-CP-JSON-DAG: "%77": 0
# CHECK-CP-JSON-DAG: "%79": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 18
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 18
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%81:vgpr_32 = V_ADD_U32_e64 %77, %80, 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: "%7": 16
# CHECK-CP-JSON-DAG: "%9": 16
# CHECK-CP-JSON-DAG: "%17": 2
# CHECK-CP-JSON-DAG: "%24": 12
# CHECK-CP-JSON-DAG: "%36": 17
# CHECK-CP-JSON-DAG: "%51": 14
# CHECK-CP-JSON-DAG: "%73": 1
# CHECK-CP-JSON-DAG: "%77": 0
# CHECK-CP-JSON-DAG: "%80": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 17
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 17
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%82:vgpr_32 = V_MUL_HI_U32_e64 %73, %81, 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: "%7": 15
# CHECK-CP-JSON-DAG: "%9": 15
# CHECK-CP-JSON-DAG: "%17": 1
# CHECK-CP-JSON-DAG: "%24": 11
# CHECK-CP-JSON-DAG: "%36": 16
# CHECK-CP-JSON-DAG: "%51": 13
# CHECK-CP-JSON-DAG: "%73": 0
# CHECK-CP-JSON-DAG: "%81": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 16
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 16
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%83:vgpr_32 = V_MUL_LO_U32_e64 %82, %17, 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: "%7": 14
# CHECK-CP-JSON-DAG: "%9": 14
# CHECK-CP-JSON-DAG: "%17": 0
# CHECK-CP-JSON-DAG: "%24": 10
# CHECK-CP-JSON-DAG: "%36": 15
# CHECK-CP-JSON-DAG: "%51": 12
# CHECK-CP-JSON-DAG: "%73": 1
# CHECK-CP-JSON-DAG: "%82": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 15
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 15
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%84:vgpr_32 = V_SUB_U32_e64 %73, %83, 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: "%7": 13
# CHECK-CP-JSON-DAG: "%9": 13
# CHECK-CP-JSON-DAG: "%17": 1
# CHECK-CP-JSON-DAG: "%24": 9
# CHECK-CP-JSON-DAG: "%36": 14
# CHECK-CP-JSON-DAG: "%51": 11
# CHECK-CP-JSON-DAG: "%73": 0
# CHECK-CP-JSON-DAG: "%82": 2
# CHECK-CP-JSON-DAG: "%83": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 14
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 14
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%85:sreg_32_xm0_xexec = V_CMP_GE_U32_e64 %84, %17, 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: "%7": 12
# CHECK-CP-JSON-DAG: "%9": 12
# CHECK-CP-JSON-DAG: "%17": 0
# CHECK-CP-JSON-DAG: "%24": 8
# CHECK-CP-JSON-DAG: "%36": 13
# CHECK-CP-JSON-DAG: "%51": 10
# CHECK-CP-JSON-DAG: "%82": 1
# CHECK-CP-JSON-DAG: "%84": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 13
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 13
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%86:vgpr_32 = V_ADD_U32_e64 1, %82, 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: "%7": 11
# CHECK-CP-JSON-DAG: "%9": 11
# CHECK-CP-JSON-DAG: "%17": 2
# CHECK-CP-JSON-DAG: "%24": 7
# CHECK-CP-JSON-DAG: "%36": 12
# CHECK-CP-JSON-DAG: "%51": 9
# CHECK-CP-JSON-DAG: "%82": 0
# CHECK-CP-JSON-DAG: "%84": 2
# CHECK-CP-JSON-DAG: "%85": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 12
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%87:vgpr_32 = V_CNDMASK_B32_e64 0, %82, 0, %86, %85, 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: "%7": 10
# CHECK-CP-JSON-DAG: "%9": 10
# CHECK-CP-JSON-DAG: "%17": 1
# CHECK-CP-JSON-DAG: "%24": 6
# CHECK-CP-JSON-DAG: "%36": 11
# CHECK-CP-JSON-DAG: "%51": 8
# CHECK-CP-JSON-DAG: "%82": 0
# CHECK-CP-JSON-DAG: "%84": 1
# CHECK-CP-JSON-DAG: "%85": 0
# CHECK-CP-JSON-DAG: "%86": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 11
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 11
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%88:vgpr_32 = V_SUB_U32_e64 %84, %17, 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: "%7": 9
# CHECK-CP-JSON-DAG: "%9": 9
# CHECK-CP-JSON-DAG: "%17": 0
# CHECK-CP-JSON-DAG: "%24": 5
# CHECK-CP-JSON-DAG: "%36": 10
# CHECK-CP-JSON-DAG: "%51": 7
# CHECK-CP-JSON-DAG: "%84": 0
# CHECK-CP-JSON-DAG: "%85": 1
# CHECK-CP-JSON-DAG: "%87": 3
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 10
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 10
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%89:vgpr_32 = V_CNDMASK_B32_e64 0, %84, 0, %88, %85, 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: "%7": 8
# CHECK-CP-JSON-DAG: "%9": 8
# CHECK-CP-JSON-DAG: "%17": 1
# CHECK-CP-JSON-DAG: "%24": 4
# CHECK-CP-JSON-DAG: "%36": 9
# CHECK-CP-JSON-DAG: "%51": 6
# CHECK-CP-JSON-DAG: "%84": 0
# CHECK-CP-JSON-DAG: "%85": 0
# CHECK-CP-JSON-DAG: "%87": 2
# CHECK-CP-JSON-DAG: "%88": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 9
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 9
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%90:sreg_32_xm0_xexec = V_CMP_GE_U32_e64 %89, %17, 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: "%7": 7
# CHECK-CP-JSON-DAG: "%9": 7
# CHECK-CP-JSON-DAG: "%17": 0
# CHECK-CP-JSON-DAG: "%24": 3
# CHECK-CP-JSON-DAG: "%36": 8
# CHECK-CP-JSON-DAG: "%51": 5
# CHECK-CP-JSON-DAG: "%87": 1
# CHECK-CP-JSON-DAG: "%89": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 8
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 8
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%91:vgpr_32 = V_ADD_U32_e64 1, %87, 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: "%7": 6
# CHECK-CP-JSON-DAG: "%9": 6
# CHECK-CP-JSON-DAG: "%24": 2
# CHECK-CP-JSON-DAG: "%36": 7
# CHECK-CP-JSON-DAG: "%51": 4
# CHECK-CP-JSON-DAG: "%87": 0
# CHECK-CP-JSON-DAG: "%90": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 7
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 7
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%92:vgpr_32 = V_CNDMASK_B32_e64 0, %87, 0, %91, %90, 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: "%7": 5
# CHECK-CP-JSON-DAG: "%9": 5
# CHECK-CP-JSON-DAG: "%24": 1
# CHECK-CP-JSON-DAG: "%36": 6
# CHECK-CP-JSON-DAG: "%51": 3
# CHECK-CP-JSON-DAG: "%87": 0
# CHECK-CP-JSON-DAG: "%90": 0
# CHECK-CP-JSON-DAG: "%91": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 6
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 6
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%54:vgpr_32 = V_ADD_U32_e64 %92, %24, 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: "%7": 4
# CHECK-CP-JSON-DAG: "%9": 4
# CHECK-CP-JSON-DAG: "%24": 0
# CHECK-CP-JSON-DAG: "%36": 5
# CHECK-CP-JSON-DAG: "%51": 2
# CHECK-CP-JSON-DAG: "%92": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 5
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: },
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "S_BRANCH %bb.7",
# 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: "%7": 3
# CHECK-CP-JSON-DAG: "%9": 3
# CHECK-CP-JSON-DAG: "%36": 4
# CHECK-CP-JSON-DAG: "%51": 1
# CHECK-CP-JSON-DAG: "%54": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest-subreg": {
# CHECK-CP-JSON-DAG: "register": "%36",
# CHECK-CP-JSON-DAG: "use": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}",
# CHECK-CP-JSON-DAG: "distance": 4
# CHECK-CP-JSON: }
# CHECK-CP-JSON-NEXT: }
# CHECK-CP-JSON-NEXT: ],
# CHECK-CP-JSON-NEXT: "bb.13": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%93:vgpr_32 = PHI %63, %bb.9, %71, %bb.10",
# 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: "%36": 2
# CHECK-CP-JSON-DAG: "%59": 1
# CHECK-CP-JSON-DAG: "%70": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "SI_END_CF %70, 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: "%36": 2
# CHECK-CP-JSON-DAG: "%59": 1
# CHECK-CP-JSON-DAG: "%70": 0
# CHECK-CP-JSON-DAG: "%93": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# 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": "%36",
# 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: "bb.14": [
# CHECK-CP-JSON-NEXT: {
# CHECK-CP-JSON-NEXT: "instr": "%94:vgpr_32 = PHI %52, %bb.7, %93, %bb.13",
# 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: "%36": 1
# CHECK-CP-JSON-DAG: "%59": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "SI_END_CF %59, 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: "%36": 1
# CHECK-CP-JSON-DAG: "%59": 0
# CHECK-CP-JSON-DAG: "%94": 1
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "%95:vgpr_32 = V_ADD_U32_e64 %36, %94, 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: "%36": 0
# CHECK-CP-JSON-DAG: "%94": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%36",
# 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": "%36",
# 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": "%96:sreg_32_xm0 = V_READFIRSTLANE_B32 %95, 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: "%95": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%95",
# 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": "%95",
# 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": "$sgpr0 = COPY %96",
# 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: "%96": 0
# CHECK-CP-JSON: },
# CHECK-CP-JSON-NEXT: "furthest": {
# CHECK-CP-JSON-DAG: "register": "%96",
# 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": "%96",
# 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": "SI_RETURN_TO_EPILOG killed $sgpr0",
# 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": 8,
# CHECK-CP-JSON-DAG: "%1": 5,
# CHECK-CP-JSON-DAG: "%2": 27,
# CHECK-CP-JSON-DAG: "%3": 2,
# CHECK-CP-JSON-DAG: "%4": 1,
# CHECK-CP-JSON-DAG: "%5": 6,
# CHECK-CP-JSON-DAG: "%6": 1,
# CHECK-CP-JSON-DAG: "%7": 19,
# CHECK-CP-JSON-DAG: "%8": 1,
# CHECK-CP-JSON-DAG: "%9": 1,
# CHECK-CP-JSON-DAG: "%10": 27,
# CHECK-CP-JSON-DAG: "%11": 2,
# CHECK-CP-JSON-DAG: "%12": 1,
# CHECK-CP-JSON-DAG: "%13": 4,
# CHECK-CP-JSON-DAG: "%14": 2,
# CHECK-CP-JSON-DAG: "%15": 1,
# CHECK-CP-JSON-DAG: "%16": 1,
# CHECK-CP-JSON-DAG: "%17": 8,
# CHECK-CP-JSON-DAG: "%18": 2,
# CHECK-CP-JSON-DAG: "%19": 1,
# CHECK-CP-JSON-DAG: "%20": 4,
# CHECK-CP-JSON-DAG: "%21": 2,
# CHECK-CP-JSON-DAG: "%22": 1,
# CHECK-CP-JSON-DAG: "%23": 1,
# CHECK-CP-JSON-DAG: "%24": 23,
# CHECK-CP-JSON-DAG: "%25": 2,
# CHECK-CP-JSON-DAG: "%26": 2,
# CHECK-CP-JSON-DAG: "%27": 0,
# CHECK-CP-JSON-DAG: "%28": 10,
# CHECK-CP-JSON-DAG: "%29": 4,
# CHECK-CP-JSON-DAG: "%30": 3,
# CHECK-CP-JSON-DAG: "%31": 3,
# CHECK-CP-JSON-DAG: "%32": 2,
# CHECK-CP-JSON-DAG: "%33": 2,
# CHECK-CP-JSON-DAG: "%34": 1,
# CHECK-CP-JSON-DAG: "%35": 1,
# CHECK-CP-JSON-DAG: "%36": 3,
# CHECK-CP-JSON-DAG: "%37": 2,
# CHECK-CP-JSON-DAG: "%38": 1,
# CHECK-CP-JSON-DAG: "%41": 2,
# CHECK-CP-JSON-DAG: "%43": 2,
# CHECK-CP-JSON-DAG: "%44": 1,
# CHECK-CP-JSON-DAG: "%45": 1,
# CHECK-CP-JSON-DAG: "%40": 1,
# CHECK-CP-JSON-DAG: "%46": 2,
# CHECK-CP-JSON-DAG: "%47": 1,
# CHECK-CP-JSON-DAG: "%48": 4,
# CHECK-CP-JSON-DAG: "%49": 1,
# CHECK-CP-JSON-DAG: "%50": 1,
# CHECK-CP-JSON-DAG: "%51": 2,
# CHECK-CP-JSON-DAG: "%52": 1,
# CHECK-CP-JSON-DAG: "%55": 5,
# CHECK-CP-JSON-DAG: "%57": 5,
# CHECK-CP-JSON-DAG: "%59": 2,
# CHECK-CP-JSON-DAG: "%60": 1,
# CHECK-CP-JSON-DAG: "%61": 1,
# CHECK-CP-JSON-DAG: "%62": 2,
# CHECK-CP-JSON-DAG: "%63": 1,
# CHECK-CP-JSON-DAG: "%66": 2,
# CHECK-CP-JSON-DAG: "%68": 2,
# CHECK-CP-JSON-DAG: "%70": 2,
# CHECK-CP-JSON-DAG: "%71": 1,
# CHECK-CP-JSON-DAG: "%65": 1,
# CHECK-CP-JSON-DAG: "%72": 1,
# CHECK-CP-JSON-DAG: "%73": 9,
# CHECK-CP-JSON-DAG: "%74": 1,
# CHECK-CP-JSON-DAG: "%75": 1,
# CHECK-CP-JSON-DAG: "%76": 1,
# CHECK-CP-JSON-DAG: "%77": 2,
# CHECK-CP-JSON-DAG: "%78": 1,
# CHECK-CP-JSON-DAG: "%79": 1,
# CHECK-CP-JSON-DAG: "%80": 1,
# CHECK-CP-JSON-DAG: "%81": 1,
# CHECK-CP-JSON-DAG: "%82": 1,
# CHECK-CP-JSON-DAG: "%83": 1,
# CHECK-CP-JSON-DAG: "%84": 1,
# CHECK-CP-JSON-DAG: "%85": 2,
# CHECK-CP-JSON-DAG: "%86": 1,
# CHECK-CP-JSON-DAG: "%87": 4,
# CHECK-CP-JSON-DAG: "%88": 1,
# CHECK-CP-JSON-DAG: "%89": 1,
# CHECK-CP-JSON-DAG: "%90": 2,
# CHECK-CP-JSON-DAG: "%91": 1,
# CHECK-CP-JSON-DAG: "%92": 1,
# CHECK-CP-JSON-DAG: "%54": 1,
# CHECK-CP-JSON-DAG: "%93": 0,
# CHECK-CP-JSON-DAG: "%94": 1,
# CHECK-CP-JSON-DAG: "%95": 1,
# CHECK-CP-JSON-DAG: "%96": 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: }