This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi, This patch is second try to improve code generated by rs6000_emit_cond_expr() See first one in http://gcc.gnu.org/ml/gcc-patches/2006-05/msg01121.html We replace any of LT, LT and GE conditions by GT condition by swapping between operands of compare and/or swapping between operands of select. Also, we replace NE by EQ using same technique Is OK for autovect-brach if bootstrap and regression passed? -- Victor and Vladimir 2006-05-25 Victor Kaplansky <victork@il.ibm.com> Vladimir Yanovsky <yanov@il.ibm.com> * gcc/config/rs6000/rs6000.c (rs6000_emit_vector_compare): New return param swap_select_operands. Handle NE, LE, LEU rcodes by requesting to swap operands of select. (rs6000_emit_vector_cond_expr): call to rs6000_emit_vector_compare with new param and swap operands of select if needed. (see attached file autovect.reverse_vect_compare.patch.txt) (See attached file: autovect.improve_cond_vect_expr.patch.txt)
Attachment:
autovect.improve_cond_vect_expr.patch.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |