aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimple-range.h
diff options
context:
space:
mode:
authorAndrew MacLeod <amacleod@redhat.com>2022-11-02 21:37:49 -0400
committerAndrew MacLeod <amacleod@redhat.com>2022-11-03 12:46:03 -0400
commit6fd485d15c1a2c427c39bcd45e03bed8cde689e6 (patch)
tree3856fbe882fca42a03b7cebcc2b3b1dd2f9f582e /gcc/gimple-range.h
parent00d7c8ff16e6838273cea808ffbe22e98104f9d5 (diff)
downloadgcc-6fd485d15c1a2c427c39bcd45e03bed8cde689e6.zip
gcc-6fd485d15c1a2c427c39bcd45e03bed8cde689e6.tar.gz
gcc-6fd485d15c1a2c427c39bcd45e03bed8cde689e6.tar.bz2
Update range query cache when a statement is updated.
Add an update_stmt interface to range query, and hook into it with the ssa statement update call. gcc/ * gimple-range.cc (gimple_ranger::update_stmt): New. * gimple-range.h (gimple_ranger::update_stmt): New prototype. * tree-ssa-operands.cc (update_stmt_operands): Notify range query that stmt has changed. * value-query.h (range_query::update_stmt): New. gcc/testsuite/ * gcc.dg/tree-ssa/vrp-update.c: New.
Diffstat (limited to 'gcc/gimple-range.h')
-rw-r--r--gcc/gimple-range.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/gimple-range.h b/gcc/gimple-range.h
index 4800bfb..22e05f6 100644
--- a/gcc/gimple-range.h
+++ b/gcc/gimple-range.h
@@ -51,6 +51,7 @@ public:
virtual bool range_of_stmt (vrange &r, gimple *, tree name = NULL) override;
virtual bool range_of_expr (vrange &r, tree name, gimple * = NULL) override;
virtual bool range_on_edge (vrange &r, edge e, tree name) override;
+ virtual void update_stmt (gimple *) override;
void range_on_entry (vrange &r, basic_block bb, tree name);
void range_on_exit (vrange &r, basic_block bb, tree name);
void export_global_ranges ();