On 5/6/21 9:56 AM, Marius Hillenbrand wrote: > Hi, > > this patch fixes the check of immediate operands to the builtin vec_permi and > adds a new test for this built-in. > > Reg-rested and bootstrapped on s390x. > > Is it OK for master? Is it OK for backporting to gcc-11? > > Regards, > Marius > > > --8<----------8<---------8<--------- > > The builtin vec_permi is peculiar in that its immediate operand is > encoded differently than the immediate operand that is backing the > builtin. This fixes the check for the immediate operand, adding a > regression test in the process. > > This partially reverts commit 3191c1f4488d1f7563b563d7ae2a102a26f16d82 > > gcc/ChangeLog: > > 2021-05-04 Marius Hillenbrand <mhil...@linux.ibm.com> > > * config/s390/s390-builtins.def (O_M5, O1_M5, ...): Remove unused > macros. > (s390_vec_permi_s64, s390_vec_permi_b64, s390_vec_permi_u64) > (s390_vec_permi_dbl, s390_vpdi): Use the O3_U2 type for the immediate > operand. > * config/s390/s390.c (s390_const_operand_ok): Remove unused > values. > > gcc/testsuite/ChangeLog: > > * gcc.target/s390/zvector/imm-range-error-1.c: Fix test for > __builtin_s390_vpdi. > * gcc.target/s390/zvector/vec-permi.c: New test for builtin > vec_permi.
Ok for mainline and GCC 11 branch. Thanks for the fix! Andreas