diff options
author | Serguei Katkov <serguei.katkov@azul.com> | 2022-06-08 16:21:01 +0700 |
---|---|---|
committer | Serguei Katkov <serguei.katkov@azul.com> | 2022-06-14 12:04:17 +0700 |
commit | 095bf6be28c5308a7e7c2cbc5a84adbb11bef57d (patch) | |
tree | 98297effc87e7450adda1af4de27f3cee60b7b00 /llvm/lib/CodeGen/MachineFunction.cpp | |
parent | 398df667d6d1d8c0c60bca3a9c6e8ff1419ff958 (diff) | |
download | llvm-095bf6be28c5308a7e7c2cbc5a84adbb11bef57d.zip llvm-095bf6be28c5308a7e7c2cbc5a84adbb11bef57d.tar.gz llvm-095bf6be28c5308a7e7c2cbc5a84adbb11bef57d.tar.bz2 |
[Greedy RegAlloc] Fix the handling of split register in last chance re-coloring.
This is a fix for https://github.com/llvm/llvm-project/issues/55827.
When register we are trying to re-color is split the original register (we tried to recover)
has no uses after the split. However in rollback actions we assign back physical register to it.
Later it causes different assertions. One of them is in attached test.
This CL fixes this by avoiding assigning physical register back to register which has no usage
or its live interval now is empty.
Reviewed By: arsenm, qcolombet
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D127281
Diffstat (limited to 'llvm/lib/CodeGen/MachineFunction.cpp')
0 files changed, 0 insertions, 0 deletions