diff options
| author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2019-03-19 19:01:34 +0000 |
|---|---|---|
| committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2019-03-19 19:01:34 +0000 |
| commit | c2e35a6f3258d102b731c77de9530714c4d02802 (patch) | |
| tree | 3227b67cb71f8609ec37dee8694a144c5c3b6316 /llvm/test/CodeGen/ARM/Windows | |
| parent | 77482120dae780444cff02fbe5ce4cdd8a71873a (diff) | |
| download | bcm5719-llvm-c2e35a6f3258d102b731c77de9530714c4d02802.tar.gz bcm5719-llvm-c2e35a6f3258d102b731c77de9530714c4d02802.zip | |
RegAllocFast: Remove early selection loop, the spill calculation will report cost 0 anyway for free regs
The 2nd loop calculates spill costs but reports free registers as cost
0 anyway, so there is little benefit from having a separate early
loop.
Surprisingly this is not NFC, as many register are marked regDisabled
so the first loop often picks up later registers unnecessarily instead
of the first one available in the allocation order...
Patch by Matthias Braun
llvm-svn: 356499
Diffstat (limited to 'llvm/test/CodeGen/ARM/Windows')
| -rw-r--r-- | llvm/test/CodeGen/ARM/Windows/alloca.ll | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/test/CodeGen/ARM/Windows/alloca.ll b/llvm/test/CodeGen/ARM/Windows/alloca.ll index 203333e71a8..7db854df729 100644 --- a/llvm/test/CodeGen/ARM/Windows/alloca.ll +++ b/llvm/test/CodeGen/ARM/Windows/alloca.ll @@ -17,7 +17,7 @@ entry: ; CHECK: bl num_entries ; Any register is actually valid here, but turns out we use lr, ; because we do not have the kill flag on R0. -; CHECK: mov.w [[R1:lr]], #7 +; CHECK: movs [[R1:r1]], #7 ; CHECK: add.w [[R0:r[0-9]+]], [[R1]], [[R0]], lsl #2 ; CHECK: bic [[R0]], [[R0]], #4 ; CHECK: lsrs r4, [[R0]], #2 |

