X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=blobdiff_plain;f=ghc%2Fcompiler%2FsimplCore%2FSimplUtils.lhs;h=3d4961f1614b7712ba30d07583f388e257123191;hp=e0ac4aac258b4f69c8c93a3cc36e29e35485ca42;hb=e0befe921f5bbfa6daba3f8ff46cdf2a2abad1da;hpb=68a1f0233996ed79824d11d946e9801473f6946c diff --git a/ghc/compiler/simplCore/SimplUtils.lhs b/ghc/compiler/simplCore/SimplUtils.lhs index e0ac4aa..3d4961f 100644 --- a/ghc/compiler/simplCore/SimplUtils.lhs +++ b/ghc/compiler/simplCore/SimplUtils.lhs @@ -31,7 +31,8 @@ import SimplMonad import BinderInfo -import AbsPrel ( primOpIsCheap, realWorldStateTy, buildId +import AbsPrel ( primOpIsCheap, realWorldStateTy, + buildId, augmentId IF_ATTACK_PRAGMAS(COMMA realWorldTy) IF_ATTACK_PRAGMAS(COMMA tagOf_PrimOp) IF_ATTACK_PRAGMAS(COMMA pprPrimOp) @@ -79,7 +80,10 @@ floatExposesHNF float_lets float_primops ok_to_dup rhs -- `build g' -- is like a HNF, -- because it *will* become one. + -- likewise for `augment g h' + -- try (CoApp (CoTyApp (CoVar bld) _) _) | bld == buildId = True + try (CoApp (CoApp (CoTyApp (CoVar bld) _) _) _) | bld == augmentId = True try other = manifestlyWHNF other {- but *not* necessarily "manifestlyBottom other"...