diff options
author | Richard Biener <rguenther@suse.de> | 2015-07-23 07:29:53 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2015-07-23 07:29:53 +0000 |
commit | 2fde61e3caf4c4660743e53497f52b65da1fe760 (patch) | |
tree | d788fc2511ee2c1b72d161e3e0df58b8c32787a7 | |
parent | 28537a45de776c6d4eb4a21447374e27acc4573d (diff) | |
download | gcc-2fde61e3caf4c4660743e53497f52b65da1fe760.zip gcc-2fde61e3caf4c4660743e53497f52b65da1fe760.tar.gz gcc-2fde61e3caf4c4660743e53497f52b65da1fe760.tar.bz2 |
re PR middle-end/66916 (FAIL: gcc.target/arm/pr43920-2.c object-size text <= 54)
2015-07-23 Richard Biener <rguenther@suse.de>
PR middle-end/66916
* match.pd: Guard widen and sign-change comparison simplification
with single_use.
From-SVN: r226089
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/match.pd | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e89f685..51649b6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2015-07-23 Richard Biener <rguenther@suse.de> + PR middle-end/66916 + * match.pd: Guard widen and sign-change comparison simplification + with single_use. + +2015-07-23 Richard Biener <rguenther@suse.de> + PR tree-optimization/66945 * tree-ssa-propagate.c (substitute_and_fold_dom_walker ::before_dom_children): Force the propagators idea of diff --git a/gcc/match.pd b/gcc/match.pd index 9a66f52..9cf0278 100644 --- a/gcc/match.pd +++ b/gcc/match.pd @@ -1679,7 +1679,8 @@ along with GCC; see the file COPYING3. If not see type on targets that require function pointer canonicalization. */ && !(targetm.have_canonicalize_funcptr_for_compare () && TREE_CODE (TREE_TYPE (@00)) == POINTER_TYPE - && TREE_CODE (TREE_TYPE (TREE_TYPE (@00))) == FUNCTION_TYPE)) + && TREE_CODE (TREE_TYPE (TREE_TYPE (@00))) == FUNCTION_TYPE) + && single_use (@0)) (if (TYPE_PRECISION (TREE_TYPE (@00)) == TYPE_PRECISION (TREE_TYPE (@0)) && (TREE_CODE (@10) == INTEGER_CST || (@1 != @10 && types_match (TREE_TYPE (@10), TREE_TYPE (@00)))) |