[Bug target/79170] [7 regression] memcmp builtin expansion sequence can overflow
acsawdey at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Jan 30 23:25:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79170
--- Comment #2 from acsawdey at gcc dot gnu.org ---
Author: acsawdey
Date: Mon Jan 30 23:24:24 2017
New Revision: 245041
URL: https://gcc.gnu.org/viewcvs?rev=245041&root=gcc&view=rev
Log:
2017-01-27 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
PR target/79170
* gcc.dg/memcmp-1.c: Improved to catch failures seen in PR 79170.
2017-01-27 Aaron Sawdey <acsawdey@linux.vnet.ibm.com>
PR target/79170
* config/rs6000/altivec.md (*setb_internal): Rename to setb_signed.
(setb_unsigned) New pattern for setb with CCUNS.
* config/rs6000/rs6000.c (expand_block_compare): Use a different
subfc./subfe sequence to avoid overflow problems. Generate a
shorter sequence with cmpld/setb for power9.
* config/rs6000/rs6000.md (subf<mode>3_carry_dot2): Add a new pattern
for generating subfc. instruction.
(cmpstrsi): Add TARGET_POPCNTD predicate as the generate sequence
now uses this instruction.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/rs6000/altivec.md
trunk/gcc/config/rs6000/rs6000.c
trunk/gcc/config/rs6000/rs6000.md
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/memcmp-1.c
More information about the Gcc-bugs
mailing list