[PATCH] D59731: [LiveRange] Reset the VNIs when splitting subranges
Quentin Colombet via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Mar 22 18:11:47 PDT 2019
qcolombet created this revision.
qcolombet added reviewers: jnspaulsson, kparzysz.
Herald added subscribers: tpr, MatzeB.
Herald added a project: LLVM.
When splitting a subrange we end up with two different subranges covering
two different, non overlapping, lanes.
As part of this splitting the VNIs of the original live-range need
to be dispatched to the subranges according to which lanes they are
actually defining.
Prior to this patch we were assuming that all values were defining
all lanes. This was wrong as demonstrated by llvm.org/PR40835.
Repository:
rL LLVM
https://reviews.llvm.org/D59731
Files:
include/llvm/CodeGen/LiveInterval.h
lib/CodeGen/LiveInterval.cpp
lib/CodeGen/LiveRangeCalc.cpp
lib/CodeGen/RegisterCoalescer.cpp
lib/CodeGen/SplitKit.cpp
test/CodeGen/SystemZ/regcoal-subranges-update.mir
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D59731.191980.patch
Type: text/x-patch
Size: 10756 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190323/be97549d/attachment.bin>
More information about the llvm-commits
mailing list