Faster Array#/MutableArray# copies

Nathan Howell nathan.d.howell at
Fri Feb 18 20:42:26 CET 2011

On Fri, Feb 18, 2011 at 12:54 AM, Roman Leshchinskiy <rl at>wrote:

> Max Bolingbroke wrote:
> > On 18 February 2011 01:18, Johan Tibell <johan.tibell at> wrote:>
> It seems like a sufficient solution for your needs would be for us to
> > use the LTO support in LLVM to inline across module boundaries - in
> > particular to inline primop implementations into their call sites. LLVM
> > would then probably deal with unrolling small loops with statically known
> > bounds.
> Could we simply use this?

Might be easier to implement a PrimOp inlining pass, and to run it before
LLVM's built-in MemCpyOptimization pass [0]. This wouldn't generally be as
good as LTO but would work without gold.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the Glasgow-haskell-users mailing list