https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77918
--- Comment #5 from iii at gcc dot gnu.org --- Author: iii Date: Tue Oct 1 14:04:08 2019 New Revision: 276409 URL: https://gcc.gnu.org/viewcvs?rev=276409&root=gcc&view=rev Log: S/390: Remove code duplication in vec_* comparison expanders s390.md uses a lot of near-identical expanders that perform dispatching to other expanders based on operand types. Since the following patch would require even more of these, avoid copy-pasting the code by generating these expanders using an iterator. gcc/ChangeLog: 2019-10-01 Ilya Leoshkevich <i...@linux.ibm.com> PR target/77918 * config/s390/s390.c (s390_expand_vec_compare): Use gen_vec_cmpordered and gen_vec_cmpunordered. * config/s390/vector.md (vec_cmpuneq, vec_cmpltgt, vec_ordered, vec_unordered): Delete. (vec_ordered<mode>): Rename to vec_cmpordered<mode>. (vec_unordered<mode>): Rename to vec_cmpunordered<mode>. (VEC_CMP_EXPAND): New iterator for the generic dispatcher. (vec_cmp<code>): Generic dispatcher. Modified: trunk/gcc/ChangeLog trunk/gcc/config/s390/s390.c trunk/gcc/config/s390/vector.md