Matt Arsenault | ff3f912 | 2017-06-20 18:56:32 +0000 | [diff] [blame] | 1 | # RUN: llc -mtriple=amdgcn--amdhsa -mcpu=hawaii -verify-machineinstrs -run-pass si-fold-operands -o - %s | FileCheck -check-prefix=GCN %s |
Matt Arsenault | ff3f912 | 2017-06-20 18:56:32 +0000 | [diff] [blame] | 2 | ... |
| 3 | --- |
| 4 | |
| 5 | # Blocks should be processed in program order to make sure folds |
| 6 | # aren't made in users before the def is seen. |
| 7 | |
| 8 | # GCN-LABEL: name: mov_in_use_list_2x{{$}} |
Jay Foad | a4ced03 | 2021-04-08 16:07:49 +0100 | [diff] [blame] | 9 | # GCN: %3:vgpr_32 = COPY undef %0 |
Matt Arsenault | ff3f912 | 2017-06-20 18:56:32 +0000 | [diff] [blame] | 10 | |
| 11 | |
| 12 | name: mov_in_use_list_2x |
| 13 | tracksRegLiveness: true |
| 14 | registers: |
| 15 | - { id: 0, class: vgpr_32, preferred-register: '' } |
| 16 | - { id: 1, class: vgpr_32, preferred-register: '' } |
| 17 | - { id: 2, class: vgpr_32, preferred-register: '' } |
| 18 | - { id: 3, class: vgpr_32, preferred-register: '' } |
| 19 | liveins: |
| 20 | body: | |
| 21 | bb.0: |
| 22 | successors: %bb.2 |
| 23 | |
| 24 | S_BRANCH %bb.2 |
| 25 | |
| 26 | bb.1: |
| 27 | successors: %bb.2 |
| 28 | |
| 29 | %2 = COPY %1 |
Puyan Lotfi | 43e94b1 | 2018-01-31 22:04:26 +0000 | [diff] [blame] | 30 | %3 = V_XOR_B32_e64 killed %2, undef %0, implicit $exec |
Jay Foad | e184eea | 2021-04-08 16:24:19 +0100 | [diff] [blame] | 31 | S_NOP 0, implicit %3 |
Matt Arsenault | ff3f912 | 2017-06-20 18:56:32 +0000 | [diff] [blame] | 32 | |
| 33 | bb.2: |
| 34 | successors: %bb.1 |
| 35 | |
Puyan Lotfi | 43e94b1 | 2018-01-31 22:04:26 +0000 | [diff] [blame] | 36 | %1 = V_MOV_B32_e32 0, implicit $exec |
Matt Arsenault | ff3f912 | 2017-06-20 18:56:32 +0000 | [diff] [blame] | 37 | S_BRANCH %bb.1 |
| 38 | |
| 39 | ... |