# 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,print" \ # 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: }