# 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 # Generated scaling benchmark: 4 modules, 14 BBs, 61 instructions --- name: acyclic_014bb tracksRegLiveness: true body: | bb.0: successors: %bb.1(0x80000000) liveins: $vgpr0, $vgpr1, $vgpr2, $vgpr3, $vgpr4, $vgpr5, $vgpr6, $vgpr7, $vgpr8, $vgpr9 %0:vgpr_32 = COPY killed $vgpr0 %1:vgpr_32 = COPY killed $vgpr1 %2:vgpr_32 = COPY killed $vgpr2 %3:vgpr_32 = COPY killed $vgpr3 %4:vgpr_32 = COPY killed $vgpr4 %5:vgpr_32 = COPY killed $vgpr5 %6:vgpr_32 = COPY killed $vgpr6 %7:vgpr_32 = COPY killed $vgpr7 %8:vgpr_32 = COPY killed $vgpr8 %9:vgpr_32 = COPY killed $vgpr9 %10:vreg_64 = REG_SEQUENCE killed %5, %subreg.sub0, killed %4, %subreg.sub1 %11:vreg_64 = REG_SEQUENCE killed %7, %subreg.sub0, killed %6, %subreg.sub1 %12:vgpr_32 = V_AND_B32_e64 1, killed %3, implicit $exec bb.1: successors: %bb.2(0x80000000) %13:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 0, 0, implicit $exec :: (load (s8), addrspace 1) %14:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 1, 0, implicit $exec :: (load (s8), addrspace 1) %15:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 2, 0, implicit $exec :: (load (s8), addrspace 1) %16:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 3, 0, implicit $exec :: (load (s8), addrspace 1) %17:vgpr_32 = V_LSHL_OR_B32_e64 killed %14, 8, killed %13, implicit $exec %18:vgpr_32 = V_LSHL_OR_B32_e64 killed %16, 8, killed %15, implicit $exec %19:vgpr_32 = V_LSHL_OR_B32_e64 killed %18, 16, killed %17, implicit $exec %20:vgpr_32 = V_ADD_U32_e64 %19, %12, 0, implicit $exec %21:vgpr_32 = V_ADD_U32_e64 %20, %1, 0, implicit $exec bb.2: successors: %bb.4(0x40000000), %bb.3(0x40000000) %22:sreg_32 = V_CMP_NE_U32_e64 0, %21, implicit $exec %23:sreg_32 = SI_IF killed %22, %bb.4, implicit-def dead $exec, implicit-def dead $scc, implicit $exec S_BRANCH %bb.3 bb.3: successors: %bb.4(0x80000000) %24:vgpr_32 = V_ADD_U32_e64 %12, 1, 0, implicit $exec S_BRANCH %bb.4 bb.4: successors: %bb.5(0x40000000), %bb.6(0x40000000) %25:vgpr_32 = PHI %12, %bb.2, %24, %bb.3 %26:sreg_32 = SI_ELSE killed %23, %bb.6, implicit-def dead $exec, implicit-def dead $scc, implicit $exec S_BRANCH %bb.5 bb.5: successors: %bb.6(0x80000000) %27:vgpr_32 = V_MUL_LO_U32_e64 %12, 2, implicit $exec S_BRANCH %bb.6 bb.6: successors: %bb.7(0x80000000) %28:vgpr_32 = PHI %25, %bb.4, %27, %bb.5 SI_END_CF killed %26, implicit-def dead $exec, implicit-def dead $scc, implicit $exec bb.7: successors: %bb.8(0x80000000) %29:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 0, 0, implicit $exec :: (load (s8), addrspace 1) %30:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 1, 0, implicit $exec :: (load (s8), addrspace 1) %31:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 2, 0, implicit $exec :: (load (s8), addrspace 1) %32:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 3, 0, implicit $exec :: (load (s8), addrspace 1) %33:vgpr_32 = V_LSHL_OR_B32_e64 killed %30, 8, killed %29, implicit $exec %34:vgpr_32 = V_LSHL_OR_B32_e64 killed %32, 8, killed %31, implicit $exec %35:vgpr_32 = V_LSHL_OR_B32_e64 killed %34, 16, killed %33, implicit $exec %36:vgpr_32 = V_ADD_U32_e64 %35, %28, 0, implicit $exec %37:vgpr_32 = V_ADD_U32_e64 %36, %21, 0, implicit $exec bb.8: successors: %bb.10(0x40000000), %bb.9(0x40000000) %38:sreg_32 = V_CMP_NE_U32_e64 0, %37, implicit $exec %39:sreg_32 = SI_IF killed %38, %bb.10, implicit-def dead $exec, implicit-def dead $scc, implicit $exec S_BRANCH %bb.9 bb.9: successors: %bb.10(0x80000000) %40:vgpr_32 = V_ADD_U32_e64 %28, 1, 0, implicit $exec S_BRANCH %bb.10 bb.10: successors: %bb.11(0x40000000), %bb.12(0x40000000) %41:vgpr_32 = PHI %28, %bb.8, %40, %bb.9 %42:sreg_32 = SI_ELSE killed %39, %bb.12, implicit-def dead $exec, implicit-def dead $scc, implicit $exec S_BRANCH %bb.11 bb.11: successors: %bb.12(0x80000000) %43:vgpr_32 = V_MUL_LO_U32_e64 %28, 2, implicit $exec S_BRANCH %bb.12 bb.12: successors: %bb.13(0x80000000) %44:vgpr_32 = PHI %41, %bb.10, %43, %bb.11 SI_END_CF killed %42, implicit-def dead $exec, implicit-def dead $scc, implicit $exec bb.13: %45:vgpr_32 = V_ADD_U32_e64 %44, %37, 0, implicit $exec %46:vgpr_32 = V_ADD_U32_e64 %45, %28, 0, implicit $exec %47:vgpr_32 = V_ADD_U32_e64 %46, %21, 0, implicit $exec %48:sreg_32_xm0 = V_READFIRSTLANE_B32 killed %47, implicit $exec $sgpr0 = COPY killed %48 SI_RETURN_TO_EPILOG killed $sgpr0 ... --- # 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": "dead %0: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-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 $vgpr1", # CHECK-CP-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "distances": {}, # CHECK-CP-JSON-NEXT: "furthest": {}, # CHECK-CP-JSON-NEXT: "furthest-subreg": {} # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "dead %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: "%1": 19 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 19 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 19 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%3: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: "%1": 18 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 18 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 18 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%4: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-DAG: "%1": 17 # CHECK-CP-JSON-DAG: "%3": 8 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 17 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 17 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%5:vgpr_32 = COPY $vgpr5", # CHECK-CP-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "distances": { # CHECK-CP-JSON-DAG: "%1": 16 # CHECK-CP-JSON-DAG: "%3": 7 # CHECK-CP-JSON-DAG: "%4": 5 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 16 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 16 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%6:vgpr_32 = COPY $vgpr6", # CHECK-CP-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "distances": { # CHECK-CP-JSON-DAG: "%1": 15 # CHECK-CP-JSON-DAG: "%3": 6 # CHECK-CP-JSON-DAG: "%4": 4 # CHECK-CP-JSON-DAG: "%5": 4 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 15 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 15 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%7:vgpr_32 = COPY $vgpr7", # CHECK-CP-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "distances": { # CHECK-CP-JSON-DAG: "%1": 14 # CHECK-CP-JSON-DAG: "%3": 5 # CHECK-CP-JSON-DAG: "%4": 3 # CHECK-CP-JSON-DAG: "%5": 3 # CHECK-CP-JSON-DAG: "%6": 4 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 14 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 14 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "dead %8:vgpr_32 = COPY $vgpr8", # CHECK-CP-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "distances": { # CHECK-CP-JSON-DAG: "%1": 13 # CHECK-CP-JSON-DAG: "%3": 4 # CHECK-CP-JSON-DAG: "%4": 2 # CHECK-CP-JSON-DAG: "%5": 2 # CHECK-CP-JSON-DAG: "%6": 3 # CHECK-CP-JSON-DAG: "%7": 3 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 13 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 13 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "dead %9:vgpr_32 = COPY $vgpr9", # CHECK-CP-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "distances": { # CHECK-CP-JSON-DAG: "%1": 12 # CHECK-CP-JSON-DAG: "%3": 3 # CHECK-CP-JSON-DAG: "%4": 1 # CHECK-CP-JSON-DAG: "%5": 1 # CHECK-CP-JSON-DAG: "%6": 2 # CHECK-CP-JSON-DAG: "%7": 2 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 12 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 12 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%10:vreg_64 = REG_SEQUENCE %5, %subreg.sub0, %4, %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: "%1": 11 # CHECK-CP-JSON-DAG: "%3": 2 # CHECK-CP-JSON-DAG: "%4": 0 # CHECK-CP-JSON-DAG: "%5": 0 # CHECK-CP-JSON-DAG: "%6": 1 # CHECK-CP-JSON-DAG: "%7": 1 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 11 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 11 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "dead %11:vreg_64 = REG_SEQUENCE %7, %subreg.sub0, %6, %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: "%1": 10 # CHECK-CP-JSON-DAG: "%3": 1 # CHECK-CP-JSON-DAG: "%6": 0 # CHECK-CP-JSON-DAG: "%7": 0 # CHECK-CP-JSON-DAG: "%10": 2 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 10 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 10 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%12:vgpr_32 = V_AND_B32_e64 1, %3, implicit $exec", # CHECK-CP-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "distances": { # CHECK-CP-JSON-DAG: "%1": 9 # CHECK-CP-JSON-DAG: "%3": 0 # CHECK-CP-JSON-DAG: "%10": 1 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 9 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 9 # 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": "%13:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 0, 0, implicit $exec :: (load (s8), 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: "%1": 8 # CHECK-CP-JSON-DAG: "%10": 0 # CHECK-CP-JSON-DAG: "%12": 7 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 8 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 8 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%14:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 1, 0, implicit $exec :: (load (s8), 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: "%1": 7 # CHECK-CP-JSON-DAG: "%10": 0 # CHECK-CP-JSON-DAG: "%12": 6 # CHECK-CP-JSON-DAG: "%13": 3 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 7 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 7 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%15:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 2, 0, implicit $exec :: (load (s8), 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: "%1": 6 # CHECK-CP-JSON-DAG: "%10": 0 # CHECK-CP-JSON-DAG: "%12": 5 # CHECK-CP-JSON-DAG: "%13": 2 # CHECK-CP-JSON-DAG: "%14": 2 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 6 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 6 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%16:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 3, 0, implicit $exec :: (load (s8), 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: "%1": 5 # CHECK-CP-JSON-DAG: "%10": 0 # CHECK-CP-JSON-DAG: "%12": 4 # CHECK-CP-JSON-DAG: "%13": 1 # CHECK-CP-JSON-DAG: "%14": 1 # CHECK-CP-JSON-DAG: "%15": 2 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 5 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest-subreg": { # CHECK-CP-JSON-DAG: "register": "%1", # CHECK-CP-JSON-DAG: "use": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-CP-JSON-DAG: "distance": 5 # CHECK-CP-JSON: } # CHECK-CP-JSON-NEXT: }, # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%17:vgpr_32 = V_LSHL_OR_B32_e64 %14, 8, %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: "%1": 4 # CHECK-CP-JSON-DAG: "%10": 11 # CHECK-CP-JSON-DAG: "%12": 3 # CHECK-CP-JSON-DAG: "%13": 0 # CHECK-CP-JSON-DAG: "%14": 0 # CHECK-CP-JSON-DAG: "%15": 1 # CHECK-CP-JSON-DAG: "%16": 1 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%10", # 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": "%10", # 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": "%18:vgpr_32 = V_LSHL_OR_B32_e64 %16, 8, %15, implicit $exec", # CHECK-CP-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-CP-JSON-NEXT: "distances": { # CHECK-CP-JSON-DAG: "%1": 3 # CHECK-CP-JSON-DAG: "%10": 10 # CHECK-CP-JSON-DAG: "%12": 2 # CHECK-CP-JSON-DAG: "%15": 0 # CHECK-CP-JSON-DAG: "%16": 0 # CHECK-CP-JSON-DAG: "%17": 1 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%10", # 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": "%10", # 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": "%19:vgpr_32 = V_LSHL_OR_B32_e64 %18, 16, %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: "%1": 2 # CHECK-CP-JSON-DAG: "%10": 9 # CHECK-CP-JSON-DAG: "%12": 1 # CHECK-CP-JSON-DAG: "%17": 0 # CHECK-CP-JSON-DAG: "%18": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%10", # 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": "%10", # 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": "%20:vgpr_32 = V_ADD_U32_e64 %19, %12, 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: "%1": 1 # CHECK-CP-JSON-DAG: "%10": 8 # CHECK-CP-JSON-DAG: "%12": 0 # CHECK-CP-JSON-DAG: "%19": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%10", # 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": "%10", # 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": "%21:vgpr_32 = V_ADD_U32_e64 %20, %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: "%1": 0 # CHECK-CP-JSON-DAG: "%10": 7 # CHECK-CP-JSON-DAG: "%12": 3 # CHECK-CP-JSON-DAG: "%20": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%10", # 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": "%10", # 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: "bb.2": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%22:sreg_32 = V_CMP_NE_U32_e64 0, %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: "%10": 6 # CHECK-CP-JSON-DAG: "%12": 2 # CHECK-CP-JSON-DAG: "%21": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%10", # 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": "%10", # 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": "%23:sreg_32 = SI_IF %22, %bb.4, 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: "%10": 5 # CHECK-CP-JSON-DAG: "%12": 1 # CHECK-CP-JSON-DAG: "%21": 13 # CHECK-CP-JSON-DAG: "%22": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "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: "%10": 4 # CHECK-CP-JSON-DAG: "%12": 0 # CHECK-CP-JSON-DAG: "%21": 12 # CHECK-CP-JSON-DAG: "%23": 1 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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: "bb.3": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%24:vgpr_32 = V_ADD_U32_e64 %12, 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: "%10": 5 # CHECK-CP-JSON-DAG: "%12": 0 # CHECK-CP-JSON-DAG: "%21": 13 # CHECK-CP-JSON-DAG: "%23": 2 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "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: "%10": 4 # CHECK-CP-JSON-DAG: "%12": 3 # CHECK-CP-JSON-DAG: "%21": 12 # CHECK-CP-JSON-DAG: "%23": 1 # CHECK-CP-JSON-DAG: "%24": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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: "bb.4": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%25:vgpr_32 = PHI %12, %bb.2, %24, %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: "%10": 3 # CHECK-CP-JSON-DAG: "%12": 2 # CHECK-CP-JSON-DAG: "%21": 11 # CHECK-CP-JSON-DAG: "%23": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%26:sreg_32 = SI_ELSE %23, %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: "%10": 3 # CHECK-CP-JSON-DAG: "%12": 2 # CHECK-CP-JSON-DAG: "%21": 11 # CHECK-CP-JSON-DAG: "%23": 0 # CHECK-CP-JSON-DAG: "%25": 1 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "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: "%10": 2 # CHECK-CP-JSON-DAG: "%12": 1 # CHECK-CP-JSON-DAG: "%21": 10 # 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": "%21", # 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": "%21", # 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: "bb.5": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%27:vgpr_32 = V_MUL_LO_U32_e64 %12, 2, 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: "%10": 3 # CHECK-CP-JSON-DAG: "%12": 0 # CHECK-CP-JSON-DAG: "%21": 11 # CHECK-CP-JSON-DAG: "%26": 2 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "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: "%10": 2 # CHECK-CP-JSON-DAG: "%21": 10 # CHECK-CP-JSON-DAG: "%26": 1 # CHECK-CP-JSON-DAG: "%27": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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: "bb.6": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%28:vgpr_32 = PHI %25, %bb.4, %27, %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: "%10": 1 # CHECK-CP-JSON-DAG: "%21": 9 # CHECK-CP-JSON-DAG: "%26": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "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: "%10": 1 # CHECK-CP-JSON-DAG: "%21": 9 # CHECK-CP-JSON-DAG: "%26": 0 # CHECK-CP-JSON-DAG: "%28": 8 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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: "bb.7": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%29:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 0, 0, implicit $exec :: (load (s8), 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: "%10": 0 # CHECK-CP-JSON-DAG: "%21": 8 # CHECK-CP-JSON-DAG: "%28": 7 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%30:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 1, 0, implicit $exec :: (load (s8), 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: "%10": 0 # CHECK-CP-JSON-DAG: "%21": 7 # CHECK-CP-JSON-DAG: "%28": 6 # CHECK-CP-JSON-DAG: "%29": 3 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%31:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 2, 0, implicit $exec :: (load (s8), 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: "%10": 0 # CHECK-CP-JSON-DAG: "%21": 6 # CHECK-CP-JSON-DAG: "%28": 5 # 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": "%21", # 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": "%21", # 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": "%32:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 3, 0, implicit $exec :: (load (s8), 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: "%10": 0 # CHECK-CP-JSON-DAG: "%21": 5 # CHECK-CP-JSON-DAG: "%28": 4 # 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": "%21", # 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": "%21", # 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": "%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: "%21": 4 # CHECK-CP-JSON-DAG: "%28": 3 # 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": "%21", # 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": "%21", # 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": "%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: "%21": 3 # CHECK-CP-JSON-DAG: "%28": 2 # 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": "%21", # 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": "%21", # 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": "%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: "%21": 2 # CHECK-CP-JSON-DAG: "%28": 1 # 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": "%21", # 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": "%21", # 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": "%36:vgpr_32 = V_ADD_U32_e64 %35, %28, 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: "%21": 1 # CHECK-CP-JSON-DAG: "%28": 0 # CHECK-CP-JSON-DAG: "%35": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%37:vgpr_32 = V_ADD_U32_e64 %36, %21, 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: "%21": 0 # CHECK-CP-JSON-DAG: "%28": 3 # CHECK-CP-JSON-DAG: "%36": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%28", # 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": "%28", # 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.8": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%38:sreg_32 = V_CMP_NE_U32_e64 0, %37, 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: "%21": 8 # CHECK-CP-JSON-DAG: "%28": 2 # CHECK-CP-JSON-DAG: "%37": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%39:sreg_32 = SI_IF %38, %bb.10, 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: "%21": 7 # CHECK-CP-JSON-DAG: "%28": 1 # CHECK-CP-JSON-DAG: "%37": 5 # CHECK-CP-JSON-DAG: "%38": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "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: "%21": 6 # CHECK-CP-JSON-DAG: "%28": 0 # CHECK-CP-JSON-DAG: "%37": 4 # CHECK-CP-JSON-DAG: "%39": 1 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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: "bb.9": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%40:vgpr_32 = V_ADD_U32_e64 %28, 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: "%21": 7 # CHECK-CP-JSON-DAG: "%28": 0 # CHECK-CP-JSON-DAG: "%37": 5 # CHECK-CP-JSON-DAG: "%39": 2 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "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: "%21": 6 # CHECK-CP-JSON-DAG: "%28": 3 # CHECK-CP-JSON-DAG: "%37": 4 # CHECK-CP-JSON-DAG: "%39": 1 # CHECK-CP-JSON-DAG: "%40": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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: "bb.10": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%41:vgpr_32 = PHI %28, %bb.8, %40, %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: "%21": 5 # CHECK-CP-JSON-DAG: "%28": 2 # CHECK-CP-JSON-DAG: "%37": 3 # CHECK-CP-JSON-DAG: "%39": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%42:sreg_32 = SI_ELSE %39, %bb.12, 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: "%21": 5 # CHECK-CP-JSON-DAG: "%28": 2 # CHECK-CP-JSON-DAG: "%37": 3 # CHECK-CP-JSON-DAG: "%39": 0 # CHECK-CP-JSON-DAG: "%41": 1 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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.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: "%21": 4 # CHECK-CP-JSON-DAG: "%28": 1 # CHECK-CP-JSON-DAG: "%37": 2 # CHECK-CP-JSON-DAG: "%41": 0 # CHECK-CP-JSON-DAG: "%42": 1 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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.11": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%43:vgpr_32 = V_MUL_LO_U32_e64 %28, 2, 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: "%21": 5 # CHECK-CP-JSON-DAG: "%28": 0 # CHECK-CP-JSON-DAG: "%37": 3 # CHECK-CP-JSON-DAG: "%42": 2 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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: "%21": 4 # CHECK-CP-JSON-DAG: "%28": 3 # CHECK-CP-JSON-DAG: "%37": 2 # CHECK-CP-JSON-DAG: "%42": 1 # CHECK-CP-JSON-DAG: "%43": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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.12": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%44:vgpr_32 = PHI %41, %bb.10, %43, %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: "%21": 3 # CHECK-CP-JSON-DAG: "%28": 2 # CHECK-CP-JSON-DAG: "%37": 1 # CHECK-CP-JSON-DAG: "%42": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "SI_END_CF %42, 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: "%21": 3 # CHECK-CP-JSON-DAG: "%28": 2 # CHECK-CP-JSON-DAG: "%37": 1 # CHECK-CP-JSON-DAG: "%42": 0 # CHECK-CP-JSON-DAG: "%44": 1 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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.13": [ # CHECK-CP-JSON-NEXT: { # CHECK-CP-JSON-NEXT: "instr": "%45:vgpr_32 = V_ADD_U32_e64 %44, %37, 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: "%21": 2 # CHECK-CP-JSON-DAG: "%28": 1 # CHECK-CP-JSON-DAG: "%37": 0 # CHECK-CP-JSON-DAG: "%44": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%46:vgpr_32 = V_ADD_U32_e64 %45, %28, 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: "%21": 1 # CHECK-CP-JSON-DAG: "%28": 0 # CHECK-CP-JSON-DAG: "%45": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%47:vgpr_32 = V_ADD_U32_e64 %46, %21, 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: "%21": 0 # CHECK-CP-JSON-DAG: "%46": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%48:sreg_32_xm0 = V_READFIRSTLANE_B32 %47, 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: "%47": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%47", # 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": "%47", # 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 %48", # 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: "%48": 0 # CHECK-CP-JSON: }, # CHECK-CP-JSON-NEXT: "furthest": { # CHECK-CP-JSON-DAG: "register": "%48", # 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": "%48", # 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": "", # CHECK-CP-JSON-DAG: "%1": 20, # CHECK-CP-JSON-DAG: "%2": "", # CHECK-CP-JSON-DAG: "%3": 9, # CHECK-CP-JSON-DAG: "%4": 6, # CHECK-CP-JSON-DAG: "%5": 5, # CHECK-CP-JSON-DAG: "%6": 5, # CHECK-CP-JSON-DAG: "%7": 4, # CHECK-CP-JSON-DAG: "%8": "", # CHECK-CP-JSON-DAG: "%9": "", # CHECK-CP-JSON-DAG: "%10": 3, # CHECK-CP-JSON-DAG: "%11": "", # CHECK-CP-JSON-DAG: "%12": 8, # CHECK-CP-JSON-DAG: "%13": 4, # CHECK-CP-JSON-DAG: "%14": 3, # CHECK-CP-JSON-DAG: "%15": 3, # CHECK-CP-JSON-DAG: "%16": 2, # CHECK-CP-JSON-DAG: "%17": 2, # CHECK-CP-JSON-DAG: "%18": 1, # CHECK-CP-JSON-DAG: "%19": 1, # CHECK-CP-JSON-DAG: "%20": 1, # CHECK-CP-JSON-DAG: "%21": 1, # CHECK-CP-JSON-DAG: "%22": 1, # CHECK-CP-JSON-DAG: "%23": 2, # CHECK-CP-JSON-DAG: "%24": 1, # CHECK-CP-JSON-DAG: "%25": 1, # CHECK-CP-JSON-DAG: "%26": 2, # CHECK-CP-JSON-DAG: "%27": 1, # CHECK-CP-JSON-DAG: "%28": 8, # 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": 1, # CHECK-CP-JSON-DAG: "%37": 1, # CHECK-CP-JSON-DAG: "%38": 1, # CHECK-CP-JSON-DAG: "%39": 2, # CHECK-CP-JSON-DAG: "%40": 1, # CHECK-CP-JSON-DAG: "%41": 1, # CHECK-CP-JSON-DAG: "%42": 2, # CHECK-CP-JSON-DAG: "%43": 1, # CHECK-CP-JSON-DAG: "%44": 1, # CHECK-CP-JSON-DAG: "%45": 1, # CHECK-CP-JSON-DAG: "%46": 1, # CHECK-CP-JSON-DAG: "%47": 1, # CHECK-CP-JSON-DAG: "%48": 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: } # 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": "dead %0: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-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 $vgpr1", # CHECK-GX-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "distances": {}, # CHECK-GX-JSON-NEXT: "furthest": {}, # CHECK-GX-JSON-NEXT: "furthest-subreg": {} # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "dead %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: "%1": 19 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 19 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 19 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%3: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: "%1": 18 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 18 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 18 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%4: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-DAG: "%1": 17 # CHECK-GX-JSON-DAG: "%3": 8 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 17 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 17 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%5:vgpr_32 = COPY $vgpr5", # CHECK-GX-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "distances": { # CHECK-GX-JSON-DAG: "%1": 16 # CHECK-GX-JSON-DAG: "%3": 7 # CHECK-GX-JSON-DAG: "%4": 5 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 16 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 16 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%6:vgpr_32 = COPY $vgpr6", # CHECK-GX-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "distances": { # CHECK-GX-JSON-DAG: "%1": 15 # CHECK-GX-JSON-DAG: "%3": 6 # CHECK-GX-JSON-DAG: "%4": 4 # CHECK-GX-JSON-DAG: "%5": 4 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 15 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 15 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%7:vgpr_32 = COPY $vgpr7", # CHECK-GX-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "distances": { # CHECK-GX-JSON-DAG: "%1": 14 # CHECK-GX-JSON-DAG: "%3": 5 # CHECK-GX-JSON-DAG: "%4": 3 # CHECK-GX-JSON-DAG: "%5": 3 # CHECK-GX-JSON-DAG: "%6": 4 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 14 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 14 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "dead %8:vgpr_32 = COPY $vgpr8", # CHECK-GX-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "distances": { # CHECK-GX-JSON-DAG: "%1": 13 # CHECK-GX-JSON-DAG: "%3": 4 # CHECK-GX-JSON-DAG: "%4": 2 # CHECK-GX-JSON-DAG: "%5": 2 # CHECK-GX-JSON-DAG: "%6": 3 # CHECK-GX-JSON-DAG: "%7": 3 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 13 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 13 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "dead %9:vgpr_32 = COPY $vgpr9", # CHECK-GX-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "distances": { # CHECK-GX-JSON-DAG: "%1": 12 # CHECK-GX-JSON-DAG: "%3": 3 # CHECK-GX-JSON-DAG: "%4": 1 # CHECK-GX-JSON-DAG: "%5": 1 # CHECK-GX-JSON-DAG: "%6": 2 # CHECK-GX-JSON-DAG: "%7": 2 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 12 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 12 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%10:vreg_64 = REG_SEQUENCE %5, %subreg.sub0, %4, %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: "%1": 11 # CHECK-GX-JSON-DAG: "%3": 2 # CHECK-GX-JSON-DAG: "%4": 0 # CHECK-GX-JSON-DAG: "%5": 0 # CHECK-GX-JSON-DAG: "%6": 1 # CHECK-GX-JSON-DAG: "%7": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 11 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 11 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "dead %11:vreg_64 = REG_SEQUENCE %7, %subreg.sub0, %6, %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: "%1": 10 # CHECK-GX-JSON-DAG: "%3": 1 # CHECK-GX-JSON-DAG: "%6": 0 # CHECK-GX-JSON-DAG: "%7": 0 # CHECK-GX-JSON-DAG: "%10": 2 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 10 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 10 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%12:vgpr_32 = V_AND_B32_e64 1, %3, implicit $exec", # CHECK-GX-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "distances": { # CHECK-GX-JSON-DAG: "%1": 9 # CHECK-GX-JSON-DAG: "%3": 0 # CHECK-GX-JSON-DAG: "%10": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 9 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 9 # 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": "%13:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 0, 0, implicit $exec :: (load (s8), 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: "%1": 8 # CHECK-GX-JSON-DAG: "%10": 0 # CHECK-GX-JSON-DAG: "%12": 7 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 8 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 8 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%14:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 1, 0, implicit $exec :: (load (s8), 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: "%1": 7 # CHECK-GX-JSON-DAG: "%10": 0 # CHECK-GX-JSON-DAG: "%12": 6 # CHECK-GX-JSON-DAG: "%13": 3 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 7 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 7 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%15:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 2, 0, implicit $exec :: (load (s8), 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: "%1": 6 # CHECK-GX-JSON-DAG: "%10": 0 # CHECK-GX-JSON-DAG: "%12": 5 # CHECK-GX-JSON-DAG: "%13": 2 # CHECK-GX-JSON-DAG: "%14": 2 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 6 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 6 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%16:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 3, 0, implicit $exec :: (load (s8), 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: "%1": 5 # CHECK-GX-JSON-DAG: "%10": 0 # CHECK-GX-JSON-DAG: "%12": 4 # CHECK-GX-JSON-DAG: "%13": 1 # CHECK-GX-JSON-DAG: "%14": 1 # CHECK-GX-JSON-DAG: "%15": 2 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 5 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest-subreg": { # CHECK-GX-JSON-DAG: "register": "%1", # CHECK-GX-JSON-DAG: "use": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "use-mi": "{{[^"]+}}", # CHECK-GX-JSON-DAG: "distance": 5 # CHECK-GX-JSON: } # CHECK-GX-JSON-NEXT: }, # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%17:vgpr_32 = V_LSHL_OR_B32_e64 %14, 8, %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: "%1": 4 # CHECK-GX-JSON-DAG: "%10": 13 # CHECK-GX-JSON-DAG: "%12": 3 # CHECK-GX-JSON-DAG: "%13": 0 # CHECK-GX-JSON-DAG: "%14": 0 # CHECK-GX-JSON-DAG: "%15": 1 # CHECK-GX-JSON-DAG: "%16": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%10", # 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": "%10", # 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": "%18:vgpr_32 = V_LSHL_OR_B32_e64 %16, 8, %15, implicit $exec", # CHECK-GX-JSON-NEXT: "id": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "head-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "tail-len": {{[0-9]+}}, # CHECK-GX-JSON-NEXT: "distances": { # CHECK-GX-JSON-DAG: "%1": 3 # CHECK-GX-JSON-DAG: "%10": 12 # CHECK-GX-JSON-DAG: "%12": 2 # CHECK-GX-JSON-DAG: "%15": 0 # CHECK-GX-JSON-DAG: "%16": 0 # CHECK-GX-JSON-DAG: "%17": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%10", # 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": "%10", # 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": "%19:vgpr_32 = V_LSHL_OR_B32_e64 %18, 16, %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: "%1": 2 # CHECK-GX-JSON-DAG: "%10": 11 # CHECK-GX-JSON-DAG: "%12": 1 # CHECK-GX-JSON-DAG: "%17": 0 # CHECK-GX-JSON-DAG: "%18": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%10", # 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": "%10", # 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": "%20:vgpr_32 = V_ADD_U32_e64 %19, %12, 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: "%1": 1 # CHECK-GX-JSON-DAG: "%10": 10 # CHECK-GX-JSON-DAG: "%12": 0 # CHECK-GX-JSON-DAG: "%19": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%10", # 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": "%10", # 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": "%21:vgpr_32 = V_ADD_U32_e64 %20, %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: "%1": 0 # CHECK-GX-JSON-DAG: "%10": 9 # CHECK-GX-JSON-DAG: "%12": 4 # CHECK-GX-JSON-DAG: "%20": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%10", # 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": "%10", # 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: "bb.2": [ # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%22:sreg_32 = V_CMP_NE_U32_e64 0, %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: "%10": 8 # CHECK-GX-JSON-DAG: "%12": 3 # CHECK-GX-JSON-DAG: "%21": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%10", # 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": "%10", # 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": "%23:sreg_32 = SI_IF %22, %bb.4, 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: "%10": 7 # CHECK-GX-JSON-DAG: "%12": 2 # CHECK-GX-JSON-DAG: "%21": 15 # CHECK-GX-JSON-DAG: "%22": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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: "%10": 6 # CHECK-GX-JSON-DAG: "%12": 1 # CHECK-GX-JSON-DAG: "%21": 14 # CHECK-GX-JSON-DAG: "%23": 2 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%24:vgpr_32 = V_ADD_U32_e64 %12, 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: "%12": 0 # CHECK-GX-JSON-DAG: "%23": 3 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%23", # 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": "%23", # 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: "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: "%12": 1 # CHECK-GX-JSON-DAG: "%23": 2 # CHECK-GX-JSON-DAG: "%24": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%23", # 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": "%23", # 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: "bb.4": [ # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%25:vgpr_32 = PHI %12, %bb.2, %24, %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: "%10": 5 # CHECK-GX-JSON-DAG: "%12": 0 # CHECK-GX-JSON-DAG: "%21": 13 # CHECK-GX-JSON-DAG: "%23": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%26:sreg_32 = SI_ELSE %23, %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: "%10": 4 # CHECK-GX-JSON-DAG: "%12": 2 # CHECK-GX-JSON-DAG: "%21": 12 # CHECK-GX-JSON-DAG: "%23": 0 # CHECK-GX-JSON-DAG: "%25": 2 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "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: "%10": 3 # CHECK-GX-JSON-DAG: "%12": 1 # CHECK-GX-JSON-DAG: "%21": 11 # 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": "%21", # 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": "%21", # 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: "bb.5": [ # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%27:vgpr_32 = V_MUL_LO_U32_e64 %12, 2, 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: "%10": 4 # CHECK-GX-JSON-DAG: "%12": 0 # CHECK-GX-JSON-DAG: "%21": 12 # CHECK-GX-JSON-DAG: "%26": 3 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "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: "%10": 3 # CHECK-GX-JSON-DAG: "%21": 11 # CHECK-GX-JSON-DAG: "%26": 2 # CHECK-GX-JSON-DAG: "%27": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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: "bb.6": [ # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%28:vgpr_32 = PHI %25, %bb.4, %27, %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: "%10": 2 # CHECK-GX-JSON-DAG: "%21": 10 # CHECK-GX-JSON-DAG: "%26": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "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: "%10": 1 # CHECK-GX-JSON-DAG: "%21": 9 # CHECK-GX-JSON-DAG: "%26": 0 # CHECK-GX-JSON-DAG: "%28": 8 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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: "bb.7": [ # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%29:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 0, 0, implicit $exec :: (load (s8), 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: "%10": 0 # CHECK-GX-JSON-DAG: "%21": 8 # CHECK-GX-JSON-DAG: "%28": 7 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%30:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 1, 0, implicit $exec :: (load (s8), 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: "%10": 0 # CHECK-GX-JSON-DAG: "%21": 7 # CHECK-GX-JSON-DAG: "%28": 6 # CHECK-GX-JSON-DAG: "%29": 3 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%31:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 2, 0, implicit $exec :: (load (s8), 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: "%10": 0 # CHECK-GX-JSON-DAG: "%21": 6 # CHECK-GX-JSON-DAG: "%28": 5 # 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": "%21", # 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": "%21", # 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": "%32:vgpr_32 = GLOBAL_LOAD_UBYTE %10, 3, 0, implicit $exec :: (load (s8), 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: "%10": 0 # CHECK-GX-JSON-DAG: "%21": 5 # CHECK-GX-JSON-DAG: "%28": 4 # 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": "%21", # 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": "%21", # 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: "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: "%21": 4 # CHECK-GX-JSON-DAG: "%28": 3 # 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": "%21", # 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": "%21", # 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": "%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: "%21": 3 # CHECK-GX-JSON-DAG: "%28": 2 # 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": "%21", # 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": "%21", # 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: "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: "%21": 2 # CHECK-GX-JSON-DAG: "%28": 1 # 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": "%21", # 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": "%21", # 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": "%36:vgpr_32 = V_ADD_U32_e64 %35, %28, 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: "%21": 1 # CHECK-GX-JSON-DAG: "%28": 0 # CHECK-GX-JSON-DAG: "%35": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%37:vgpr_32 = V_ADD_U32_e64 %36, %21, 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: "%21": 0 # CHECK-GX-JSON-DAG: "%28": 4 # CHECK-GX-JSON-DAG: "%36": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%28", # 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": "%28", # 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: "bb.8": [ # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%38:sreg_32 = V_CMP_NE_U32_e64 0, %37, 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: "%21": 10 # CHECK-GX-JSON-DAG: "%28": 3 # CHECK-GX-JSON-DAG: "%37": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%39:sreg_32 = SI_IF %38, %bb.10, 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: "%21": 9 # CHECK-GX-JSON-DAG: "%28": 2 # CHECK-GX-JSON-DAG: "%37": 7 # CHECK-GX-JSON-DAG: "%38": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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.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: "%21": 8 # CHECK-GX-JSON-DAG: "%28": 1 # CHECK-GX-JSON-DAG: "%37": 6 # CHECK-GX-JSON-DAG: "%39": 2 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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.9": [ # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%40:vgpr_32 = V_ADD_U32_e64 %28, 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: "%28": 0 # CHECK-GX-JSON-DAG: "%39": 3 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%39", # 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": "%39", # 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: "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: "%28": 1 # CHECK-GX-JSON-DAG: "%39": 2 # CHECK-GX-JSON-DAG: "%40": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%39", # 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": "%39", # 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: "bb.10": [ # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%41:vgpr_32 = PHI %28, %bb.8, %40, %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: "%21": 7 # CHECK-GX-JSON-DAG: "%28": 0 # CHECK-GX-JSON-DAG: "%37": 5 # CHECK-GX-JSON-DAG: "%39": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%42:sreg_32 = SI_ELSE %39, %bb.12, 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: "%21": 6 # CHECK-GX-JSON-DAG: "%28": 2 # CHECK-GX-JSON-DAG: "%37": 4 # CHECK-GX-JSON-DAG: "%39": 0 # CHECK-GX-JSON-DAG: "%41": 2 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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.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: "%21": 5 # CHECK-GX-JSON-DAG: "%28": 1 # CHECK-GX-JSON-DAG: "%37": 3 # CHECK-GX-JSON-DAG: "%41": 1 # CHECK-GX-JSON-DAG: "%42": 2 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%43:vgpr_32 = V_MUL_LO_U32_e64 %28, 2, 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: "%21": 6 # CHECK-GX-JSON-DAG: "%28": 0 # CHECK-GX-JSON-DAG: "%37": 4 # CHECK-GX-JSON-DAG: "%42": 3 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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.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: "%21": 5 # CHECK-GX-JSON-DAG: "%28": 4 # CHECK-GX-JSON-DAG: "%37": 3 # CHECK-GX-JSON-DAG: "%42": 2 # CHECK-GX-JSON-DAG: "%43": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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.12": [ # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%44:vgpr_32 = PHI %41, %bb.10, %43, %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: "%21": 4 # CHECK-GX-JSON-DAG: "%28": 3 # CHECK-GX-JSON-DAG: "%37": 2 # CHECK-GX-JSON-DAG: "%42": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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 %42, 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: "%21": 3 # CHECK-GX-JSON-DAG: "%28": 2 # CHECK-GX-JSON-DAG: "%37": 1 # CHECK-GX-JSON-DAG: "%42": 0 # CHECK-GX-JSON-DAG: "%44": 1 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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.13": [ # CHECK-GX-JSON-NEXT: { # CHECK-GX-JSON-NEXT: "instr": "%45:vgpr_32 = V_ADD_U32_e64 %44, %37, 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: "%21": 2 # CHECK-GX-JSON-DAG: "%28": 1 # CHECK-GX-JSON-DAG: "%37": 0 # CHECK-GX-JSON-DAG: "%44": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%46:vgpr_32 = V_ADD_U32_e64 %45, %28, 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: "%21": 1 # CHECK-GX-JSON-DAG: "%28": 0 # CHECK-GX-JSON-DAG: "%45": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%47:vgpr_32 = V_ADD_U32_e64 %46, %21, 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: "%21": 0 # CHECK-GX-JSON-DAG: "%46": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%21", # 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": "%21", # 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": "%48:sreg_32_xm0 = V_READFIRSTLANE_B32 %47, 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: "%47": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%47", # 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": "%47", # 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 %48", # 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: "%48": 0 # CHECK-GX-JSON: }, # CHECK-GX-JSON-NEXT: "furthest": { # CHECK-GX-JSON-DAG: "register": "%48", # 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": "%48", # 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": "", # CHECK-GX-JSON-DAG: "%1": 20, # CHECK-GX-JSON-DAG: "%2": "", # CHECK-GX-JSON-DAG: "%3": 9, # CHECK-GX-JSON-DAG: "%4": 6, # CHECK-GX-JSON-DAG: "%5": 5, # CHECK-GX-JSON-DAG: "%6": 5, # CHECK-GX-JSON-DAG: "%7": 4, # CHECK-GX-JSON-DAG: "%8": "", # CHECK-GX-JSON-DAG: "%9": "", # CHECK-GX-JSON-DAG: "%10": 3, # CHECK-GX-JSON-DAG: "%11": "", # CHECK-GX-JSON-DAG: "%12": 8, # CHECK-GX-JSON-DAG: "%13": 4, # CHECK-GX-JSON-DAG: "%14": 3, # CHECK-GX-JSON-DAG: "%15": 3, # CHECK-GX-JSON-DAG: "%16": 2, # CHECK-GX-JSON-DAG: "%17": 2, # CHECK-GX-JSON-DAG: "%18": 1, # CHECK-GX-JSON-DAG: "%19": 1, # CHECK-GX-JSON-DAG: "%20": 1, # CHECK-GX-JSON-DAG: "%21": 1, # CHECK-GX-JSON-DAG: "%22": 1, # CHECK-GX-JSON-DAG: "%23": 3, # CHECK-GX-JSON-DAG: "%24": 2, # CHECK-GX-JSON-DAG: "%25": 3, # CHECK-GX-JSON-DAG: "%26": 3, # CHECK-GX-JSON-DAG: "%27": 2, # CHECK-GX-JSON-DAG: "%28": 9, # 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": 1, # CHECK-GX-JSON-DAG: "%37": 1, # CHECK-GX-JSON-DAG: "%38": 1, # CHECK-GX-JSON-DAG: "%39": 3, # CHECK-GX-JSON-DAG: "%40": 2, # CHECK-GX-JSON-DAG: "%41": 3, # CHECK-GX-JSON-DAG: "%42": 3, # CHECK-GX-JSON-DAG: "%43": 2, # CHECK-GX-JSON-DAG: "%44": 2, # CHECK-GX-JSON-DAG: "%45": 1, # CHECK-GX-JSON-DAG: "%46": 1, # CHECK-GX-JSON-DAG: "%47": 1, # CHECK-GX-JSON-DAG: "%48": 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: }