diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2020-05-17 14:55:51 +0200 |
---|---|---|
committer | Aldy Hernandez <aldyh@redhat.com> | 2020-06-01 09:48:43 +0200 |
commit | 4a5e9d0089cc59523a3830b35be5e9849e634130 (patch) | |
tree | 39174921d2fbbb1198c5479d0a89d24d90661c46 /gcc/tree-vrp.h | |
parent | 32633ec815b4d741a9a4b1b75de235844f6d691c (diff) | |
download | gcc-4a5e9d0089cc59523a3830b35be5e9849e634130.zip gcc-4a5e9d0089cc59523a3830b35be5e9849e634130.tar.gz gcc-4a5e9d0089cc59523a3830b35be5e9849e634130.tar.bz2 |
Move value_range_equiv code to its own file.
gcc/
* Makefile.in (OBJS): Add value-range-equiv.o.
* tree-vrp.c (*value_range_equiv*): Move to...
* value-range-equiv.cc: ...here.
* tree-vrp.h (class value_range_equiv): Move to...
* value-range-equiv.h: ...here.
* vr-values.h: Include value-range-equiv.h.
Diffstat (limited to 'gcc/tree-vrp.h')
-rw-r--r-- | gcc/tree-vrp.h | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/gcc/tree-vrp.h b/gcc/tree-vrp.h index aa8201f..b3d187f 100644 --- a/gcc/tree-vrp.h +++ b/gcc/tree-vrp.h @@ -22,76 +22,6 @@ along with GCC; see the file COPYING3. If not see #include "value-range.h" -/* Note value_range_equiv cannot currently be used with GC memory, - only value_range is fully set up for this. */ -class GTY((user)) value_range_equiv : public value_range -{ - public: - value_range_equiv (); - value_range_equiv (const value_range &); - /* Deep-copies equiv bitmap argument. */ - value_range_equiv (tree, tree, bitmap = NULL, value_range_kind = VR_RANGE); - - /* Shallow-copies equiv bitmap. */ - value_range_equiv (const value_range_equiv &) /* = delete */; - /* Shallow-copies equiv bitmap. */ - value_range_equiv& operator=(const value_range_equiv &) /* = delete */; - - /* Move equiv bitmap from source range. */ - void move (value_range_equiv *); - - /* Leaves equiv bitmap alone. */ - void update (tree, tree, value_range_kind = VR_RANGE); - /* Deep-copies equiv bitmap argument. */ - void set (tree, tree, bitmap = NULL, value_range_kind = VR_RANGE); - void set (tree); - - bool operator== (const value_range_equiv &) const /* = delete */; - bool operator!= (const value_range_equiv &) const /* = delete */; - void intersect (const value_range_equiv *); - void union_ (const value_range_equiv *); - bool equal_p (const value_range_equiv &, bool ignore_equivs) const; - - /* Types of value ranges. */ - void set_undefined (); - void set_varying (tree); - - /* Equivalence bitmap methods. */ - bitmap equiv () const; - void equiv_clear (); - void equiv_add (const_tree, const value_range_equiv *, - bitmap_obstack * = NULL); - - /* Misc methods. */ - void deep_copy (const value_range_equiv *); - void dump (FILE *) const; - void dump () const; - - private: - /* Deep-copies bitmap argument. */ - void set_equiv (bitmap); - void check (); - - /* Set of SSA names whose value ranges are equivalent to this one. - This set is only valid when TYPE is VR_RANGE or VR_ANTI_RANGE. */ - bitmap m_equiv; -}; - -inline -value_range_equiv::value_range_equiv () - : value_range () -{ - m_equiv = NULL; -} - -inline bitmap -value_range_equiv::equiv () const -{ - return m_equiv; -} - -extern void dump_value_range (FILE *, const value_range_equiv *); - struct assert_info { /* Predicate code for the ASSERT_EXPR. Must be COMPARISON_CLASS_P. */ |