projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use new showMultiLineString to fix Trac #4436
[ghc-hetmet.git]
/
compiler
/
nativeGen
/
RegAlloc
/
Linear
/
Main.hs
diff --git
a/compiler/nativeGen/RegAlloc/Linear/Main.hs
b/compiler/nativeGen/RegAlloc/Linear/Main.hs
index
63f2814
..
de77152
100644
(file)
--- a/
compiler/nativeGen/RegAlloc/Linear/Main.hs
+++ b/
compiler/nativeGen/RegAlloc/Linear/Main.hs
@@
-132,12
+132,12
@@
regAlloc (CmmData sec d)
( CmmData sec d
, Nothing )
( CmmData sec d
, Nothing )
-regAlloc (CmmProc (LiveInfo info _ _) lbl params [])
+regAlloc (CmmProc (LiveInfo info _ _ _) lbl params [])
= return ( CmmProc info lbl params (ListGraph [])
, Nothing )
regAlloc (CmmProc static lbl params sccs)
= return ( CmmProc info lbl params (ListGraph [])
, Nothing )
regAlloc (CmmProc static lbl params sccs)
- | LiveInfo info (Just first_id) (Just block_live) <- static
+ | LiveInfo info (Just first_id) (Just block_live) _ <- static
= do
-- do register allocation on each component.
(final_blocks, stats)
= do
-- do register allocation on each component.
(final_blocks, stats)
@@
-212,10
+212,12
@@
process _ _ [] [] accum _
process first_id block_live [] next_round accum madeProgress
| not madeProgress
process first_id block_live [] next_round accum madeProgress
| not madeProgress
- = pprTrace "RegAlloc.Linear.Main.process: no progress made, bailing out."
+
+ {- BUGS: There are so many unreachable blocks in the code the warnings are overwhelming.
+ pprTrace "RegAlloc.Linear.Main.process: no progress made, bailing out."
( text "Unreachable blocks:"
( text "Unreachable blocks:"
- $$ vcat (map ppr next_round))
- $ return $ reverse accum
+ $$ vcat (map ppr next_round)) -}
+ = return $ reverse accum
| otherwise
= process first_id block_live
| otherwise
= process first_id block_live