[PATCH] D29105: Fix regalloc assignment of overlapping registers
Alexander via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jan 25 07:15:51 PST 2017
alex-t added inline comments.
================
Comment at: lib/CodeGen/SplitKit.cpp:535
+ if (TRI.getSubRegIndexLaneMask(I) == LM) {
+ SubIdx = I;
+ break;
----------------
alex-t wrote:
> What if in parent LiveInterval there are more then one subrange (i.e. several not adjacent lanes are in use) ? Let's say we copy sub0 and sub2.
> LaneMask will be 1010 and the condition "TRI.getSubRegIndexLaneMask(I) == LM" will never met.
> Given the assert below this, why this never expected to happen?
Oops... forget it ) I missed that getSubRegIndexLaneMask and setSubreg treat the parameter as a plane integer...
Repository:
rL LLVM
https://reviews.llvm.org/D29105
More information about the llvm-commits
mailing list