diff options
Diffstat (limited to 'gcc/tree.cc')
-rw-r--r-- | gcc/tree.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/gcc/tree.cc b/gcc/tree.cc index 9759c6b..c8b8b3e 100644 --- a/gcc/tree.cc +++ b/gcc/tree.cc @@ -14613,10 +14613,11 @@ verify_type (const_tree t) /* Return 1 if ARG interpreted as signed in its precision is known to be always non-negative or 2 if ARG is known to be always negative, or 3 if - ARG may be non-negative or negative. */ + ARG may be non-negative or negative. STMT if specified is the statement + on which it is being tested. */ int -get_range_pos_neg (tree arg) +get_range_pos_neg (tree arg, gimple *stmt) { if (arg == error_mark_node) return 3; @@ -14649,7 +14650,7 @@ get_range_pos_neg (tree arg) if (TREE_CODE (arg) != SSA_NAME) return 3; int_range_max r; - while (!get_global_range_query ()->range_of_expr (r, arg) + while (!get_range_query (cfun)->range_of_expr (r, arg, stmt) || r.undefined_p () || r.varying_p ()) { gimple *g = SSA_NAME_DEF_STMT (arg); |