aboutsummaryrefslogtreecommitdiff
path: root/gcc/analyzer/constraint-manager.h
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/analyzer/constraint-manager.h')
-rw-r--r--gcc/analyzer/constraint-manager.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc/analyzer/constraint-manager.h b/gcc/analyzer/constraint-manager.h
index 3b8189d..31556ae 100644
--- a/gcc/analyzer/constraint-manager.h
+++ b/gcc/analyzer/constraint-manager.h
@@ -87,6 +87,9 @@ struct bounded_range
json::object *to_json () const;
+ std::unique_ptr<text_art::widget>
+ make_dump_widget (const text_art::dump_widget_info &dwi) const;
+
bool contains_p (tree cst) const;
bool intersects_p (const bounded_range &other,
@@ -134,6 +137,9 @@ public:
json::value *to_json () const;
+ void add_to_dump_widget (text_art::tree_widget &parent,
+ const text_art::dump_widget_info &dwi) const;
+
tristate eval_condition (enum tree_code op,
tree rhs_const,
bounded_ranges_manager *mgr) const;
@@ -267,6 +273,10 @@ public:
json::object *to_json () const;
+ std::unique_ptr<text_art::widget>
+ make_dump_widget (const text_art::dump_widget_info &dwi,
+ unsigned id) const;
+
bool contains_non_constant_p () const;
/* An equivalence class can contain multiple constants (e.g. multiple
@@ -343,6 +353,10 @@ class constraint
json::object *to_json () const;
+ std::unique_ptr<text_art::widget>
+ make_dump_widget (const text_art::dump_widget_info &dwi,
+ const constraint_manager &cm) const;
+
hashval_t hash () const;
bool operator== (const constraint &other) const;
@@ -394,6 +408,9 @@ public:
void add_to_hash (inchash::hash *hstate) const;
+ std::unique_ptr<text_art::widget>
+ make_dump_widget (const text_art::dump_widget_info &dwi) const;
+
equiv_class_id m_ec_id;
const bounded_ranges *m_ranges;
};
@@ -427,6 +444,9 @@ public:
json::object *to_json () const;
+ std::unique_ptr<text_art::widget>
+ make_dump_widget (const text_art::dump_widget_info &dwi) const;
+
const equiv_class &get_equiv_class_by_index (unsigned idx) const
{
return *m_equiv_classes[idx];