Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/a365a58eade7cb2c961af8e60c20b7d78b1b7484

>---------------------------------------------------------------

commit a365a58eade7cb2c961af8e60c20b7d78b1b7484
Author: Simon Peyton Jones <[email protected]>
Date:   Fri Apr 27 17:45:56 2012 +0100

    Make more primops cheaper
    
    This puts back the earlier behaviour (pre "aggressive-primop" patch)
    whereby most primpos were considered cheap.  In the aggressive-primop
    patch we made them ones with bigger "code_size" seem not-cheap, but
    this slows down fft2 a lot.  So I've reverted to the earlier behaviour.
    
       +++ b/compiler/prelude/PrimOp.lhs
       @@ -450,6 +450,8 @@ primOpIsCheap op
          -- This is vital; see Note [PrimOp can_fail and has_side_effects]
        && not (primOpOutOfLine op)
      -   -- && primOpCodeSize op <= primOpCodeSizeDefault
      +-- Omitting; it makes fft2 run a lot slower by preventing
      +--           eta expansion in an inner loop, with a primop cosDouble#

>---------------------------------------------------------------

 compiler/prelude/PrimOp.lhs |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/compiler/prelude/PrimOp.lhs b/compiler/prelude/PrimOp.lhs
index 50803fb..02b6f0b 100644
--- a/compiler/prelude/PrimOp.lhs
+++ b/compiler/prelude/PrimOp.lhs
@@ -450,6 +450,8 @@ primOpIsCheap op
      -- This is vital; see Note [PrimOp can_fail and has_side_effects]
  && not (primOpOutOfLine op)
 -- && primOpCodeSize op <= primOpCodeSizeDefault 
+-- Omitting; it makes fft2 run a lot slower by preventing
+--           eta expansion in an inner loop, with a primop cosDouble#
      -- The latter two conditions are a HACK; we should 
      -- really have a proper property on primops that says
      -- when they are cheap to execute.  For now we are using



_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to