projects
/
ghc-hetmet.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
f928808
)
Don't try and coalesce RealReg->RealReg moves
author
Ben.Lippmeier@anu.edu.au
<unknown>
Tue, 19 May 2009 03:55:28 +0000
(
03:55
+0000)
committer
Ben.Lippmeier@anu.edu.au
<unknown>
Tue, 19 May 2009 03:55:28 +0000
(
03:55
+0000)
compiler/nativeGen/RegAlloc/Graph/Main.hs
patch
|
blob
|
history
diff --git
a/compiler/nativeGen/RegAlloc/Graph/Main.hs
b/compiler/nativeGen/RegAlloc/Graph/Main.hs
index
94b18ae
..
d239d0d
100644
(file)
--- a/
compiler/nativeGen/RegAlloc/Graph/Main.hs
+++ b/
compiler/nativeGen/RegAlloc/Graph/Main.hs
@@
-311,9
+311,13
@@
graphAddCoalesce (r1, r2) graph
(vr2, classOfVirtualReg vr2)
graph
- | otherwise
- = panic "RegAlloc.Graph.Main.graphAddCoalesce: can't coalesce two real regs"
-
+ -- We can't coalesce two real regs, but there could well be existing
+ -- hreg,hreg moves in the input code. We'll just ignore these
+ -- for coalescing purposes.
+ | RegReal _ <- r1
+ , RegReal _ <- r2
+ = graph
+
-- | Patch registers in code using the reg -> reg mapping in this graph.
patchRegsFromGraph