[PATCH, rs6000] Fix implementation of vec_pack (vector double, vector double) built-in function
Segher Boessenkool
segher@kernel.crashing.org
Sat Jun 16 00:29:00 GMT 2018
Hi!
On Fri, Jun 15, 2018 at 12:30:47PM -0500, Kelvin Nilsen wrote:
> This patch fixes an error in the code generation for vec_pack (vector double, vector double). As previously implemented, this built-in function translates to the vpkudum instruction.
>
> This patch causes vec_pack (vector double, vector double) to behave the same as vec_float2 for the same type signature, producing the vmrgow instruction on little-endian targets and the vmrgew instruction on big-endian targets.
> * gcc.target/powerpc/builtins-3-p8.c (test_pack_float): Remove
> this test.
> * gcc.target/powerpc/builtins-9-p8-be.c: New test.
> * gcc.target/powerpc/builtins-9-p8-le.c: New test.
Please merge the BE and LE tests to one file (you can use { target be }
and { target le } selectors on the scan-assembler, for example).
> * gcc.target/powerpc/builtins-9-p9-le.c: New test.
Why is there a separate p9 test? What is different from the p8 version?
Segher
More information about the Gcc-patches
mailing list