Faster Array#/MutableArray# copies

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


On Fri, Feb 18, 2011 at 12:54 AM, Roman Leshchinskiy <rl at cse.unsw.edu.au>wrote:

> Max Bolingbroke wrote:
> > On 18 February 2011 01:18, Johan Tibell <johan.tibell at gmail.com> 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?
>
> http://llvm.org/docs/LangRef.html#int_memcpy


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.

[0] http://llvm.org/doxygen/MemCpyOptimizer_8cpp_source.html
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/glasgow-haskell-users/attachments/20110218/761f9c03/attachment.htm>


More information about the Glasgow-haskell-users mailing list