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