aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/X86/2009-01-12-CoalescerBug.ll
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2009-12-04 00:16:04 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2009-12-04 00:16:04 +0000
commit88d11c3a214da464deb05eb17922d633e5af77a1 (patch)
treedcc016454a3e8332b8d9f3e22e331a4ab0073158 /test/CodeGen/X86/2009-01-12-CoalescerBug.ll
parent723be602ecdfde30a50c3afe1780575fdf8f0f56 (diff)
downloadexternal_llvm-88d11c3a214da464deb05eb17922d633e5af77a1.zip
external_llvm-88d11c3a214da464deb05eb17922d633e5af77a1.tar.gz
external_llvm-88d11c3a214da464deb05eb17922d633e5af77a1.tar.bz2
Also attempt trivial coalescing for live intervals that end in a copy.
The coalescer is supposed to clean these up, but when setting up parameters for a function call, there may be copies to physregs. If the defining instruction has been LICM'ed far away, the coalescer won't touch it. The register allocation hint does not always work - when the register allocator is backtracking, it clears the hints. This patch takes care of a few more cases that r90163 missed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90502 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/X86/2009-01-12-CoalescerBug.ll')
-rw-r--r--test/CodeGen/X86/2009-01-12-CoalescerBug.ll2
1 files changed, 1 insertions, 1 deletions
diff --git a/test/CodeGen/X86/2009-01-12-CoalescerBug.ll b/test/CodeGen/X86/2009-01-12-CoalescerBug.ll
index 27a7113..8e41e5a 100644
--- a/test/CodeGen/X86/2009-01-12-CoalescerBug.ll
+++ b/test/CodeGen/X86/2009-01-12-CoalescerBug.ll
@@ -1,4 +1,4 @@
-; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu | grep movq | count 2
+; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu | grep movq | count 1
; PR3311
%struct.CUMULATIVE_ARGS = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 }