Matthias Braun | 71f9564 | 2016-05-20 23:14:56 +0000 | [diff] [blame] | 1 | # RUN: llc -march=amdgcn -run-pass liveintervals -verify-machineinstrs -o /dev/null -debug-only=regalloc %s 2>&1 | FileCheck %s |
| 2 | # REQUIRES: asserts |
| 3 | # We currently maintain a main liveness range which operates like a superset of |
| 4 | # all subregister liveranges. We may need to create additional SSA values at |
| 5 | # merge point in this main liverange even though none of the subregister |
| 6 | # liveranges needed it. |
| 7 | # |
| 8 | # Should see three distinct value numbers: |
| 9 | # CHECK: %vreg0 [{{.*}}:0)[{{.*}}:1)[{{.*}}:2) 0@{{[0-9]+[Berd]}} 1@{{[0-9]+[Berd]}} 2@{{[0-9]+B-phi}} |
| 10 | --- | |
Matt Arsenault | 3dbeefa | 2017-03-21 21:39:51 +0000 | [diff] [blame^] | 11 | define amdgpu_kernel void @test0() { ret void } |
Matthias Braun | 71f9564 | 2016-05-20 23:14:56 +0000 | [diff] [blame] | 12 | ... |
| 13 | --- |
| 14 | name: test0 |
| 15 | registers: |
| 16 | - { id: 0, class: sreg_64 } |
| 17 | body: | |
| 18 | bb.0: |
| 19 | successors: %bb.1, %bb.2 |
Matthias Braun | 333e468 | 2016-07-26 21:49:34 +0000 | [diff] [blame] | 20 | S_NOP 0, implicit-def undef %0.sub0 |
Matthias Braun | 71f9564 | 2016-05-20 23:14:56 +0000 | [diff] [blame] | 21 | S_CBRANCH_VCCNZ %bb.1, implicit undef %vcc |
| 22 | S_BRANCH %bb.2 |
| 23 | |
| 24 | bb.1: |
| 25 | successors: %bb.2 |
Matthias Braun | 333e468 | 2016-07-26 21:49:34 +0000 | [diff] [blame] | 26 | S_NOP 0, implicit-def %0.sub1 |
| 27 | S_NOP 0, implicit %0.sub1 |
Matthias Braun | 71f9564 | 2016-05-20 23:14:56 +0000 | [diff] [blame] | 28 | S_BRANCH %bb.2 |
| 29 | |
| 30 | bb.2: |
Matthias Braun | 333e468 | 2016-07-26 21:49:34 +0000 | [diff] [blame] | 31 | S_NOP 0, implicit %0.sub0 |
Matthias Braun | 71f9564 | 2016-05-20 23:14:56 +0000 | [diff] [blame] | 32 | ... |