summaryrefslogtreecommitdiff
path: root/gcc/tree-vrp.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/tree-vrp.c')
-rw-r--r--gcc/tree-vrp.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c
index 1f0b6880c45..657a8d186c8 100644
--- a/gcc/tree-vrp.c
+++ b/gcc/tree-vrp.c
@@ -62,6 +62,8 @@ along with GCC; see the file COPYING3. If not see
#include "alloc-pool.h"
#include "domwalk.h"
#include "tree-cfgcleanup.h"
+#include "stringpool.h"
+#include "attribs.h"
#define VR_INITIALIZER { VR_UNDEFINED, NULL_TREE, NULL_TREE, NULL }
@@ -796,7 +798,8 @@ get_single_symbol (tree t, bool *neg, tree *inv)
if (TREE_CODE (t) != SSA_NAME)
return NULL_TREE;
- gcc_assert (! inv_ || ! TREE_OVERFLOW_P (inv_));
+ if (inv_ && TREE_OVERFLOW_P (inv_))
+ inv_ = drop_tree_overflow (inv_);
*neg = neg_;
*inv = inv_;