]> git.ipfire.org Git - thirdparty/gcc.git/commit
rs6000: Guard __builtin_{un,}pack_vector_int128 with vsx [PR109932]
authorKewen Lin <linkw@linux.ibm.com>
Tue, 20 Jun 2023 06:40:52 +0000 (01:40 -0500)
committerKewen Lin <linkw@linux.ibm.com>
Tue, 20 Jun 2023 08:24:11 +0000 (03:24 -0500)
commitdb291447877aae67979ce3655fcc6fc877f57c6a
tree338e839a8f6c3877c787b43926d4f02a34132735
parentbccc9960eb728bfd890c9388593bd166efcd0591
rs6000: Guard __builtin_{un,}pack_vector_int128 with vsx [PR109932]

As PR109932 shows, builtins __builtin_{un,}pack_vector_int128
should be guarded under vsx rather than power7, as their
corresponding bif patterns have the conditions TARGET_VSX
and VECTOR_MEM_ALTIVEC_OR_VSX_P (V1TImode).  This patch is to
ensure __builtin_{un,}pack_vector_int128 only available under
vsx.

PR target/109932

gcc/ChangeLog:

* config/rs6000/rs6000-builtin.def (BU_VSX_MISC_2): New macro.
({un,}pack_vector_int128): Use BU_VSX_MISC_2 instead of
BU_P7_MISC_2.

gcc/testsuite/ChangeLog:

* gcc.target/powerpc/pr109932-1.c: New test.
* gcc.target/powerpc/pr109932-2.c: New test.
gcc/config/rs6000/rs6000-builtin.def
gcc/testsuite/gcc.target/powerpc/pr109932-1.c [new file with mode: 0644]
gcc/testsuite/gcc.target/powerpc/pr109932-2.c [new file with mode: 0644]