1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-24 05:23:45 +02:00
llvm-mirror/test/CodeGen/AMDGPU/subreg_interference.mir
Matthias Braun ea58cf0e44 LiveRegMatrix: Fix some subreg interference checks
Surprisingly, one of the three interference checks in LiveRegMatrix was
using the main live range instead of the apropriate subregister range
resulting in unnecessarily conservative results.

llvm-svn: 296722
2017-03-02 00:35:08 +00:00

25 lines
786 B
YAML

# RUN: llc -o - %s -mtriple=amdgcn--amdhsa -verify-machineinstrs -run-pass=greedy,virtregrewriter | FileCheck %s
---
# We should not detect any interference between v0/v1 here and only allocate
# sgpr0-sgpr3.
#
# CHECK-LABEL: func0
# CHECK: S_NOP 0, implicit-def %sgpr0
# CHECK: S_NOP 0, implicit-def %sgpr3
# CHECK: S_NOP 0, implicit-def %sgpr1
# CHECK: S_NOP 0, implicit-def %sgpr2
# CHECK: S_NOP 0, implicit %sgpr0, implicit %sgpr3
# CHECK: S_NOP 0, implicit %sgpr1, implicit %sgpr2
name: func0
body: |
bb.0:
S_NOP 0, implicit-def undef %0.sub0 : sreg_128
S_NOP 0, implicit-def %0.sub3
S_NOP 0, implicit-def undef %1.sub1 : sreg_128
S_NOP 0, implicit-def %1.sub2
S_NOP 0, implicit %0.sub0, implicit %0.sub3
S_NOP 0, implicit %1.sub1, implicit %1.sub2
...