r243155 - in /trunk/gcc: ChangeLog config/s390/...

krebbel@gcc.gnu.org krebbel@gcc.gnu.org
Fri Dec 2 08:22:00 GMT 2016


Author: krebbel
Date: Fri Dec  2 08:22:34 2016
New Revision: 243155

URL: https://gcc.gnu.org/viewcvs?rev=243155&root=gcc&view=rev
Log:
S/390: Merge compare of compare results

With this patch EQ and NE compares on CC mode reader patterns are
folded.  This allows using the result of the vec_all_* and vec_any_*
builtins directly in a conditional jump instruction as in the attached
testcase.

gcc/ChangeLog:

2016-12-02  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	* config/s390/s390-protos.h (s390_reverse_condition): New
	prototype.
	* config/s390/s390.c (s390_canonicalize_comparison): Fold compares
	of CC mode values.
	(s390_reverse_condition): New function.
	* config/s390/s390.h (REVERSE_CC_MODE, REVERSE_CONDITION): Define
	target macros.

gcc/testsuite/ChangeLog:

2016-12-02  Andreas Krebbel  <krebbel@linux.vnet.ibm.com>

	* gcc.target/s390/zvector/vec-cmp-2.c: New test.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/s390/s390-protos.h
    trunk/gcc/config/s390/s390.c
    trunk/gcc/config/s390/s390.h
    trunk/gcc/testsuite/ChangeLog



More information about the Gcc-cvs mailing list