brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.8 KiB · 8132fa4 Raw
62 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -run-pass=early-tailduplication -verify-machineinstrs -o - %s | FileCheck %s3# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -passes=early-tailduplication -o - %s | FileCheck %s4 5# Early tail duplication should not merge bb.6 into bb.5, adding a6# non-terminator (S_SLEEP) after the terminator S_MOV_B32_term.7 8---9name:           tail_duplicate_terminator10tracksRegLiveness: true11body:             |12  ; CHECK-LABEL: name: tail_duplicate_terminator13  ; CHECK: bb.0:14  ; CHECK-NEXT:   successors: %bb.2(0x80000000)15  ; CHECK-NEXT: {{  $}}16  ; CHECK-NEXT:   S_BRANCH %bb.217  ; CHECK-NEXT: {{  $}}18  ; CHECK-NEXT: bb.1:19  ; CHECK-NEXT:   successors: %bb.2(0x80000000)20  ; CHECK-NEXT: {{  $}}21  ; CHECK-NEXT:   S_SLEEP 122  ; CHECK-NEXT: {{  $}}23  ; CHECK-NEXT: bb.2:24  ; CHECK-NEXT:   successors: %bb.3(0x80000000)25  ; CHECK-NEXT: {{  $}}26  ; CHECK-NEXT:   [[S_MOV_B32_term:%[0-9]+]]:sreg_32_xm0_xexec = S_MOV_B32_term $exec_lo27  ; CHECK-NEXT: {{  $}}28  ; CHECK-NEXT: bb.3:29  ; CHECK-NEXT:   successors: %bb.3(0x40000000), %bb.4(0x40000000)30  ; CHECK-NEXT: {{  $}}31  ; CHECK-NEXT:   SI_WATERFALL_LOOP %bb.3, implicit $exec32  ; CHECK-NEXT: {{  $}}33  ; CHECK-NEXT: bb.4:34  ; CHECK-NEXT:   successors: %bb.5(0x80000000)35  ; CHECK-NEXT: {{  $}}36  ; CHECK-NEXT:   $exec_lo = S_MOV_B32_term [[S_MOV_B32_term]]37  ; CHECK-NEXT: {{  $}}38  ; CHECK-NEXT: bb.5:39  ; CHECK-NEXT:   successors: %bb.1(0x80000000)40  ; CHECK-NEXT: {{  $}}41  ; CHECK-NEXT:   S_SLEEP 242  ; CHECK-NEXT:   S_BRANCH %bb.143  bb.1:44    S_BRANCH %bb.345 46  bb.2:47    S_SLEEP 148 49  bb.3:50    %0:sreg_32_xm0_xexec = S_MOV_B32_term $exec_lo51 52  bb.4:53    SI_WATERFALL_LOOP %bb.4, implicit $exec54 55  bb.5:56    $exec_lo = S_MOV_B32_term %057 58  bb.6:59    S_SLEEP 260    S_BRANCH %bb.261...62