[commit: ghc] master: Port "Make array copy primops inline" and related patches to new codegen. (5b10538)
Johan Tibell
johan.tibell at gmail.com
Tue Jun 14 12:17:29 CEST 2011
+-- EZY: This code has an unusually high amount of assignTemp calls, seen
+-- nowhere else in the code generator. This is mostly because these
+-- "primitive" ops result in a surprisingly large amount of code. It
+-- will likely be worthwhile to optimize what is emitted here, so that
+-- our optimization passes don't waste time repeatedly optimizing the
+-- same bits of code.
One possibility would be to use out-of-lime primops when the size
isn't statically known and generate code inline otherwise? When the
size is statically known we don't generate much code.
On Mon, Jun 13, 2011 at 5:40 PM, Edward Z. Yang <ezyang at mit.edu> wrote:
> Repository : ssh://darcs.haskell.org//srv/darcs/ghc
>
> On branch : master
>
> http://hackage.haskell.org/trac/ghc/changeset/5b1053897fa16ced293e749447e9c027d15d29f5
>
>>---------------------------------------------------------------
>
> commit 5b1053897fa16ced293e749447e9c027d15d29f5
> Author: Edward Z. Yang <ezyang at mit.edu>
> Date: Fri Jun 10 17:16:32 2011 +0100
>
> Port "Make array copy primops inline" and related patches to new codegen.
>
> The following patches were ported:
>
> d0faaa6 Fix segfault in array copy primops on 32-bit
> 18691d4 Make assignTemp_ less pessimistic
> 9c23f06 Make array copy primops inline
>
> Signed-off-by: Edward Z. Yang <ezyang at mit.edu>
>
> compiler/codeGen/CgForeignCall.hs | 3 +
> compiler/codeGen/CgMonad.lhs | 2 +
> compiler/codeGen/CgPrimOp.hs | 7 ++
> compiler/codeGen/StgCmmPrim.hs | 209 +++++++++++++++++++++++++++++++++++++
> compiler/codeGen/StgCmmUtils.hs | 17 +++-
> 5 files changed, 234 insertions(+), 4 deletions(-)
>
>
> Diff suppressed because of size. To see it, use:
>
> git show 5b1053897fa16ced293e749447e9c027d15d29f5
>
> _______________________________________________
> Cvs-ghc mailing list
> Cvs-ghc at haskell.org
> http://www.haskell.org/mailman/listinfo/cvs-ghc
>
More information about the Cvs-ghc
mailing list