[LLVMdev] NEON intrinsics preventing redundant load optimization?

Renato Golin renato.golin at linaro.org
Fri Jan 2 07:37:53 PST 2015


On 10 December 2014 at 11:13, Simon Taylor <simontaylor1 at ntlworld.com> wrote:
> I’ve managed to replace the load/store intrinsics with pointer dereferences (along with a typedef to get the alignment correct). This generates 100% the same IR + asm as the auto-vectorized C version (both using -O3), and works with the toolchain in the latest XCode. Are there any concerns around doing this?

My view is that you should only use intrinsics where the language has
no semantics for it. Since this is not the case, using pointers is
probably the best way, anyway.

There is still the "bug" where the load/store intrinsics don't map to
simple pointer references, but since you found a better work-around,
that has lower priority now.

I changed the bug to reflect that.

cheers,
--renato




More information about the llvm-dev mailing list