X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2FnativeGen%2FRegAllocStats.hs;h=12f4cee3a0cd47fd0b1065a6d57e2943e2dc7634;hb=10428c59580c05a349b1cb5e715a4efc9a97a327;hp=59e94aadb3d86e58834fe23d4c71facb108805df;hpb=982c1f494de8a691294a95aee108e765c3f592a0;p=ghc-hetmet.git diff --git a/compiler/nativeGen/RegAllocStats.hs b/compiler/nativeGen/RegAllocStats.hs index 59e94aa..12f4cee 100644 --- a/compiler/nativeGen/RegAllocStats.hs +++ b/compiler/nativeGen/RegAllocStats.hs @@ -58,9 +58,9 @@ data RegAllocStats , raGraphColored :: Color.Graph Reg RegClass Reg -- ^ the coalesced and colored graph , raCoalesced :: UniqFM Reg -- ^ the regs that were coaleced , raPatched :: [LiveCmmTop] -- ^ code with vregs replaced by hregs - , raSpillClean :: [LiveCmmTop] -- ^ code with unneeded spill/reloads cleaned out + , raSpillClean :: [LiveCmmTop] -- ^ code with unneeded spill\/reloads cleaned out , raFinal :: [NatCmmTop] -- ^ final code - , raSRMs :: (Int, Int, Int) } -- ^ spill/reload/reg-reg moves present in this code + , raSRMs :: (Int, Int, Int) } -- ^ spill\/reload\/reg-reg moves present in this code instance Outputable RegAllocStats where @@ -143,7 +143,7 @@ pprStats stats graph in vcat [outSpills, outLife, outConflict, outScatter] --- | Dump a table of how many spill loads / stores were inserted for each vreg. +-- | Dump a table of how many spill loads \/ stores were inserted for each vreg. pprStatsSpills :: [RegAllocStats] -> SDoc @@ -151,7 +151,7 @@ pprStatsSpills stats = let finals = [ s | s@RegAllocStatsColored{} <- stats] - -- sum up how many stores/loads/reg-reg-moves were left in the code + -- sum up how many stores\/loads\/reg-reg-moves were left in the code total = foldl' addSRM (0, 0, 0) $ map raSRMs finals @@ -291,11 +291,10 @@ regColors , (fake3, "#aa00aa") , (fake4, "#ff0055") , (fake5, "#5500ff") ] -#endif -- reg colors for x86_64 -#if x86_64_TARGET_ARCH +#elif x86_64_TARGET_ARCH regDotColor :: Reg -> SDoc regDotColor reg = let Just str = lookupUFM regColors reg @@ -317,16 +316,26 @@ regColors , (r15, "#002080") ] ++ zip (map RealReg [16..31]) (repeat "red") -#endif -- reg colors for ppc -#if powerpc_TARGET_ARCH +#elif powerpc_TARGET_ARCH +regDotColor :: Reg -> SDoc +regDotColor reg + = case regClass reg of + RcInteger -> text "blue" + RcFloat -> text "red" + RcDouble -> text "green" + +#elif sparc_TARGET_ARCH regDotColor :: Reg -> SDoc regDotColor reg = case regClass reg of RcInteger -> text "blue" RcFloat -> text "red" + RcDouble -> text "green" +#else +#error ToDo: regDotColor #endif