[PATCH] D48032: [RegisterCoalescer] Avoid erasing copy that breaks subranges
Tim Renouf via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 12 12:35:54 PDT 2018
tpr added a comment.
To try and diagnose this kind of problem in the future, I added code (not in this change) to always recalculate the live interval if there are subranges, and compare it with the one updated in RegisterCoalescer.cpp. The problem I ran into then is that RegisterCoalescer remembers more information about when subregs are undef and thus considered not live than is available in the MIR after coalescing. I wonder if there is some way of recording undef subregs in a use in MIR such that recalculating a live interval should always give the same result as updating in coalescing, and if it doesn't then you've found a bug.
Repository:
rL LLVM
https://reviews.llvm.org/D48032
More information about the llvm-commits
mailing list