Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch :
http://hackage.haskell.org/trac/ghc/changeset/48ae26af8e3cca88fdee50a17cf976c12a38bf6f >--------------------------------------------------------------- commit 48ae26af8e3cca88fdee50a17cf976c12a38bf6f Author: Max Bolingbroke <batterseapo...@hotmail.com> Date: Thu Feb 2 12:04:30 2012 +0000 Small tweaks only >--------------------------------------------------------------- .../supercompile/Supercompile/Drive/Process3.hs | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/compiler/supercompile/Supercompile/Drive/Process3.hs b/compiler/supercompile/Supercompile/Drive/Process3.hs index f9cfb3f..a1e2df6 100644 --- a/compiler/supercompile/Supercompile/Drive/Process3.hs +++ b/compiler/supercompile/Supercompile/Drive/Process3.hs @@ -320,10 +320,12 @@ memo opt = memo_opt case [ (p, instanceSplit (remaining_deeds, heap_inst, k_inst, fun p `applyAbsVars` map (renameAbsVar rn_lr) (abstracted p)) memo_opt) | p <- promises (scpMemoState s) , Just (heap_inst@(Heap h_inst _), k_inst, rn_lr) <- [-- (\res -> if isNothing res then pprTraceSC "no match:" (ppr (fun p)) res else pprTraceSC "match!" (ppr (fun p)) res) $ - match' (meaning p) reduced_state] - , let instance_match = not (M.null h_inst && null k_inst) -- FIXME: restrict instance matches + match' (meaning p) reduced_state] + , let instance_match = not (M.null h_inst && null k_inst) -- This will always succeed because the state had deeds for everything in its heap/stack anyway: Just remaining_deeds = claimDeeds (releaseStateDeed state) (heapSize heap_inst + stackSize k_inst) + , not instance_match -- FIXME: less restrictive instance matches + -- FIXME: prefer "more exact" matches , if dumped p then pprTraceSC "tieback-to-dumped" (ppr (fun p)) False else True _______________________________________________ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc