https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84033
--- Comment #3 from Alan Modra <amodra at gcc dot gnu.org> --- Author: amodra Date: Thu Jan 25 23:57:18 2018 New Revision: 257070 URL: https://gcc.gnu.org/viewcvs?rev=257070&root=gcc&view=rev Log: PR84033, powerpc64le -moptimize-swaps bad code with vec_vbpermq vbpermq produces its output in bits 48..63 of the target vector reg, so the output cannot be lane swapped. gcc/ PR target/84033 * config/rs6000/rs6000-p8swap.c (rtx_is_swappable_p): Exclude UNSPEC_VBPERMQ. Sort other unspecs. gcc/testsuite/ PR target/84033 * gcc.target/powerpc/swaps-p8-46.c: New. Added: trunk/gcc/testsuite/gcc.target/powerpc/swaps-p8-46.c Modified: trunk/gcc/ChangeLog trunk/gcc/config/rs6000/rs6000-p8swap.c trunk/gcc/testsuite/ChangeLog