LiveIntervals: Fix handleMoveUp with subreg def moving across a def
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Fri, 18 Oct 2019 23:24:25 +0000 (23:24 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Fri, 18 Oct 2019 23:24:25 +0000 (23:24 +0000)
commitd4274f0174ff152490195fa2a65e4087deae3dd4
treeea5078ee34a2f8f96fe89b1d34affcfcc32f9705
parent3b113a2be6dc9a614bd5c95138a6c34d44fe67d9
LiveIntervals: Fix handleMoveUp with subreg def moving across a def

If a subregister def was moved across another subregister def and
another use, the main range was not correctly updated. The end point
of the moved interval ended too early and missed the use from theh
other lanes in the subreg def.

llvm-svn: 375300
llvm/lib/CodeGen/LiveIntervals.cpp
llvm/test/CodeGen/AMDGPU/sched-handleMoveUp-subreg-def-across-subreg-def.mir [new file with mode: 0644]
llvm/unittests/MI/LiveIntervalTest.cpp