[PATCH, rs6000] Add missing builtin functionality and tests

Segher Boessenkool segher@kernel.crashing.org
Fri Dec 8 12:49:00 GMT 2017


Hi Carl,

On Thu, Dec 07, 2017 at 08:56:07AM -0800, Carl Love wrote:
> 	* config/rs6000/altivec.h (vec_extract_fp32_from_short[h|l]): Add #defines.

Line too long.

> 	* gcc.target/powerpc/builtins-3-p8.c (test_vsi_packs_[vui|vsi
> 	vssi|vusi], test_vsi_packsu-[vssi|vusi|vsll|vull|vsi|vui]): Add
> 	testcases. Add dg-final tests for new instructions.
> 	* gcc.target/powerpc/p8vector-builtin-2.c (v[b|bs|u]char_eq,
> 	v[b|s|i|u]int_eq, vbool_eq, v[b|s|u]int_ne, vbool_ne,
> 	vsign_ne, vuns_ne, vbshort_ne): Add tests. Add dg-final instruction
> 	tests.

> 	* gcc.target/powerpc/builtins-3.c (test_sll_v[sc|uc|si]_v[sc|uc|si]_v[s|uc]):

If you don't write out the names people cannot find them easily.

> +/* Expected results for Big Endian:
> +     vec_packpx                     vpkpx
> +     vec_vmulosb                    vmulesb

> +/* { dg-final { scan-assembler-times "vmulesb" 0 } } */

Those don't agree.  Also test for vmulosb?  (Also in the LE test).

Did you test this targeting older CPUs?  If not, expect fallout.

The patch is okay for trunk (with the trivial fixes).  Thanks!


Segher



More information about the Gcc-patches mailing list