diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2019-06-03 11:28:28 +0000 |
---|---|---|
committer | Aldy Hernandez <aldyh@gcc.gnu.org> | 2019-06-03 11:28:28 +0000 |
commit | f2b00d2ba461d6dafdeccf6d93828b349b5e7f76 (patch) | |
tree | 207b3e75858642d677836e0e269fe0285e6eead6 /gcc/tree-vrp.h | |
parent | 49f3f450046a63b5de61be28eb6023d86e0c950e (diff) | |
download | gcc-f2b00d2ba461d6dafdeccf6d93828b349b5e7f76.zip gcc-f2b00d2ba461d6dafdeccf6d93828b349b5e7f76.tar.gz gcc-f2b00d2ba461d6dafdeccf6d93828b349b5e7f76.tar.bz2 |
tree-vrp.h (value_range_base::nonzero_p): New.
* tree-vrp.h (value_range_base::nonzero_p): New.
(value_range_base::set_nonnull): Rename to...
(value_range_base::set_nonzero): ...this.
(value_range_base::set_null): Rename to...
(value_range_base::set_zero): ...this.
(value_range::set_nonnull): Remove.
(value_range::set_null): Remove.
* tree-vrp.c (range_is_null): Remove.
(range_is_nonnull): Remove.
(extract_range_from_binary_expr): Use value_range_base::*zero_p
instead of range_is_*null.
(extract_range_from_unary_expr): Same.
(value_range_base::set_nonnull): Rename to...
(value_range_base::set_nonzero): ...this.
(value_range::set_nonnull): Remove.
(value_range_base::set_null): Rename to...
(value_range_base::set_zero): ...this.
(value_range::set_null): Remove.
(extract_range_from_binary_expr): Rename set_*null uses to
set_*zero.
(extract_range_from_unary_expr): Same.
(union_helper): Same.
* vr-values.c (get_value_range): Use set_*zero instead of
set_*null.
(vr_values::extract_range_from_binary_expr): Same.
(vr_values::extract_range_basic): Same.
From-SVN: r271865
Diffstat (limited to 'gcc/tree-vrp.h')
-rw-r--r-- | gcc/tree-vrp.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/gcc/tree-vrp.h b/gcc/tree-vrp.h index 9d52b42..435df42 100644 --- a/gcc/tree-vrp.h +++ b/gcc/tree-vrp.h @@ -46,8 +46,8 @@ public: void set (value_range_kind, tree, tree); void set (tree); - void set_nonnull (tree); - void set_null (tree); + void set_nonzero (tree); + void set_zero (tree); enum value_range_kind kind () const; tree min () const; @@ -72,6 +72,7 @@ public: bool may_contain_p (tree) const; void set_and_canonicalize (enum value_range_kind, tree, tree); bool zero_p () const; + bool nonzero_p () const; bool singleton_p (tree *result = NULL) const; void dump (FILE *) const; @@ -118,8 +119,6 @@ class GTY((user)) value_range : public value_range_base /* Deep-copies equiv bitmap argument. */ void set (value_range_kind, tree, tree, bitmap = NULL); void set (tree); - void set_nonnull (tree); - void set_null (tree); bool operator== (const value_range &) const /* = delete */; bool operator!= (const value_range &) const /* = delete */; @@ -222,6 +221,16 @@ value_range_base::zero_p () const && integer_zerop (m_max)); } +/* Return TRUE if range is nonzero. */ + +inline bool +value_range_base::nonzero_p () const +{ + return (m_kind == VR_ANTI_RANGE + && integer_zerop (m_min) + && integer_zerop (m_max)); +} + extern void dump_value_range (FILE *, const value_range *); extern void dump_value_range (FILE *, const value_range_base *); |