diff options
author | Marc Glisse <marc.glisse@inria.fr> | 2016-03-21 22:03:44 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2016-03-21 22:03:44 +0100 |
commit | b94078834d4fb41cd0363d3100f0cf1570ecbf82 (patch) | |
tree | 5191635950c0c0e987d28ebc5c374cf3e66d8f66 /gcc/match.pd | |
parent | 4a148e19be2b45ab4c8dcd081e37cc99f976649f (diff) | |
download | gcc-b94078834d4fb41cd0363d3100f0cf1570ecbf82.zip gcc-b94078834d4fb41cd0363d3100f0cf1570ecbf82.tar.gz gcc-b94078834d4fb41cd0363d3100f0cf1570ecbf82.tar.bz2 |
re PR tree-optimization/70317 (folding x<=x to true for large vectors, ignoring nans)
PR tree-optimization/70317
* match.pd (cmp @0 @0): Pass @0 instead of TYPE_MODE (TREE_TYPE (@0))
to HONOR_NANS.
* gcc.dg/pr70317.c: New test.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r234382
Diffstat (limited to 'gcc/match.pd')
-rw-r--r-- | gcc/match.pd | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/match.pd b/gcc/match.pd index 7245ff4..ddb4b8a 100644 --- a/gcc/match.pd +++ b/gcc/match.pd @@ -1866,7 +1866,7 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) (simplify (cmp @0 @0) (if (! FLOAT_TYPE_P (TREE_TYPE (@0)) - || ! HONOR_NANS (TYPE_MODE (TREE_TYPE (@0)))) + || ! HONOR_NANS (@0)) { constant_boolean_node (true, type); } (if (cmp != EQ_EXPR) (eq @0 @0))))) @@ -1875,7 +1875,7 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) (cmp @0 @0) (if (cmp != NE_EXPR || ! FLOAT_TYPE_P (TREE_TYPE (@0)) - || ! HONOR_NANS (TYPE_MODE (TREE_TYPE (@0)))) + || ! HONOR_NANS (@0)) { constant_boolean_node (false, type); }))) (for cmp (unle unge uneq) (simplify |