SIMD/SSE support & alignment

Johan Tibell johan.tibell at gmail.com
Tue Mar 12 16:12:02 CET 2013


On Tue, Mar 12, 2013 at 8:08 AM, Geoffrey Mainland <mainland at apeiron.net>wrote:

> LLVM needs to know statically whether or not an SSE move is aligned---it
> can't be computed at runtime. I don't think passing an extra Int#
> argument (or whatever) to a primop is going to work.
>

Ah, but sometimes optimization exposes that information statically (i.e. by
inlining). In my case I know Array# is word-aligned and if someone uses
memcpy with a 0 offset the compiler might spot this and use the right
alignment (this is what happens today). Now, if e.g. ByteArray# can never
allocated 16-byte aligned, this doesn't help us much.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20130312/a5de4cbe/attachment.htm>


More information about the ghc-devs mailing list