diff options
author | Wei Mi <wmi@google.com> | 2016-04-15 23:16:44 +0000 |
---|---|---|
committer | Wei Mi <wmi@google.com> | 2016-04-15 23:16:44 +0000 |
commit | 963f2df4d2aaa5e76aa6c0bc52f3de66af7be8c4 (patch) | |
tree | 6acd7dacd2443a1ff01f9c257c82bed1c9d83ebe /llvm/test | |
parent | 6d09f993c266398d9bcfee6d71a03132167a01cd (diff) | |
download | bcm5719-llvm-963f2df4d2aaa5e76aa6c0bc52f3de66af7be8c4.tar.gz bcm5719-llvm-963f2df4d2aaa5e76aa6c0bc52f3de66af7be8c4.zip |
Don't skip splitSeparateComponents in eliminateDeadDefs for HoistSpillHelper::hoistAllSpills.
Because HoistSpillHelper::hoistAllSpills is called in postOptimization, before the
patch we didn't want LiveRangeEdit::eliminateDeadDefs to call splitSeparateComponents
and generate unassigned new vregs. However, skipping splitSeparateComponents will make
verify-machineinstrs unhappy, so I remove the early return, and use
HoistSpillHelper::LRE_DidCloneVirtReg to assign physreg/stackslot for those new vregs.
In addition, some code reorganization to make class HoistSpillHelper privately inheriting
from LiveRangeEdit::Delegate possible. This is to be consistent with class RAGreedy and
class RegisterCoalescer.
Differential Revision: http://reviews.llvm.org/D19142
llvm-svn: 266489
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/CodeGen/X86/interval-update-remat.ll | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/test/CodeGen/X86/interval-update-remat.ll b/llvm/test/CodeGen/X86/interval-update-remat.ll index e9d24d16e0b..4e80e34c947 100644 --- a/llvm/test/CodeGen/X86/interval-update-remat.ll +++ b/llvm/test/CodeGen/X86/interval-update-remat.ll @@ -1,4 +1,4 @@ -; RUN: llc -verify-regalloc < %s +; RUN: llc -verify-regalloc -verify-machineinstrs < %s ; PR27275: When enabling remat for vreg defined by PHIs, make sure the update ; of the live range removes dead phi. Otherwise, we may end up with PHIs with ; incorrect operands and that will trigger assertions or verifier failures |