Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / CodeGen / MIR / AMDGPU / virtreg-uses-unallocatable-class.mir
blobe5daee29a52dafd87276a5d1abacc3b96ad980a5
1 # UNSUPPORTED: reverse_iteration
2 # RUN: not llc -mtriple=amdgcn-- -mcpu=gfx900 -run-pass=none -o - %s 2>&1 | FileCheck %s
4 # Check a diagnostic is emitted if non-allocatable classes are used
5 # with virtual registers, and there's no assert.
7 # CHECK: error: {{.*}}: Cannot use non-allocatable class 'TTMP_32' for virtual register named_use in function 'virtreg_unallocatable'
8 # CHECK: error: {{.*}}: Cannot use non-allocatable class 'TTMP_32' for virtual register named_def in function 'virtreg_unallocatable'
9 # CHECK: error: {{.*}}: Cannot use non-allocatable class 'TTMP_32' for virtual register 0 in function 'virtreg_unallocatable'
10 # CHECK: error: {{.*}}: Cannot use non-allocatable class 'TTMP_32' for virtual register 2 in function 'virtreg_unallocatable'
11 # CHECK: error: {{.*}}: Cannot use non-allocatable class 'TTMP_32' for virtual register 1 in function 'virtreg_unallocatable'
13 ---
14 name: virtreg_unallocatable
15 tracksRegLiveness: true
16 registers:
17   - { id: 0, class: ttmp_32}
18 body:             |
19   bb.0:
20     %1:ttmp_32 = IMPLICIT_DEF
21     S_NOP 0, implicit %2:ttmp_32
23     %named_def:ttmp_32 = IMPLICIT_DEF
24     S_NOP 0, implicit %named_use:ttmp_32
26 ...