[PATCH] AArch64: Implement big endian bit-conversion for NEON types

James Molloy james at jamesmolloy.co.uk
Thu Apr 24 08:04:45 PDT 2014


Hi Christian,

So consider the following IR:

define <2 x i32> @f(<2 x float> %p) {
  %1 = bitcast <2 x float> %p to <2 x i32>
  ret <2 x i32> %1
}

That is totally possible to create (in fact, there is a conversion BIF in
OpenCL that does exactly this! - "as_uint2"), and the mid and backends
should handle *any* code the frontend may throw at it. It is not sufficient
to only handle cases with obvious use cases. The LangRef tells you exactly
what interface a backend must support.

Cheers,

James


On 24 April 2014 15:52, Christian Pirker <cpirker at a-bix.com> wrote:

> Hi James,
>
> LLVM converts 128 bit vector types into 2x64 bit types (and vice versa)
> for the sake of function argument passing.
> That's the reason behind these bit conversions.
> I don't see any benefit in handling other types of vector conversions.
>
> Thanks,
> Christian
>
> http://reviews.llvm.org/D3424
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140424/45f6baab/attachment.html>


More information about the llvm-commits mailing list