diff options
author | Matthias Braun <matze@braunis.de> | 2017-06-15 22:14:55 +0000 |
---|---|---|
committer | Matthias Braun <matze@braunis.de> | 2017-06-15 22:14:55 +0000 |
commit | 02688b00ef03018033c601d8d83c6baf7a596c7f (patch) | |
tree | a1761d3e246d9819885cd2d770e49c1a3d0fbcc4 /test/CodeGen/ARM/alloca-align.ll | |
parent | c82adde7b97fc21bddcc396683487af5a6bb73cd (diff) |
RegScavenging: Add scavengeRegisterBackwards()
Re-apply r276044/r279124. Trying to reproduce or disprove the ppc64
problems reported in the stage2 build last time, which I cannot
reproduce right now.
This is a variant of scavengeRegister() that works for
enterBasicBlockEnd()/backward(). The benefit of the backward mode is
that it is not affected by incomplete kill flags.
This patch also changes
PrologEpilogInserter::doScavengeFrameVirtualRegs() to use the register
scavenger in backwards mode.
Differential Revision: http://reviews.llvm.org/D21885
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@305516 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/ARM/alloca-align.ll')
-rw-r--r-- | test/CodeGen/ARM/alloca-align.ll | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/test/CodeGen/ARM/alloca-align.ll b/test/CodeGen/ARM/alloca-align.ll index 3bba156f0ee..6186d137ef7 100644 --- a/test/CodeGen/ARM/alloca-align.ll +++ b/test/CodeGen/ARM/alloca-align.ll @@ -12,7 +12,7 @@ declare void @bar(i32*, [20000 x i8]* byval) ; And a base pointer getting used. ; CHECK: mov r6, sp ; Which is passed to the call -; CHECK: add [[REG:r[0-9]+]], r6, #19456 +; CHECK: add [[REG:r[0-9]+|lr]], r6, #19456 ; CHECK: add r0, [[REG]], #536 ; CHECK: bl bar define void @foo([20000 x i8]* %addr) { |