diff options
author | Andrew MacLeod <amacleod@redhat.com> | 2021-11-04 15:08:06 -0400 |
---|---|---|
committer | Andrew MacLeod <amacleod@redhat.com> | 2021-11-05 13:15:19 -0400 |
commit | 98244c68e77cf75f93b66ee02df059f718c3fbc0 (patch) | |
tree | 2495475ee19889024e88e4c8bfbdf730b3698ea6 /gcc/gimple-range-cache.h | |
parent | a79fe53d6ce6074d083e925b6b19773e45817405 (diff) | |
download | gcc-98244c68e77cf75f93b66ee02df059f718c3fbc0.zip gcc-98244c68e77cf75f93b66ee02df059f718c3fbc0.tar.gz gcc-98244c68e77cf75f93b66ee02df059f718c3fbc0.tar.bz2 |
Abstract ranger cache update list.
Make it more efficient by removing the call to vec::contains.
PR tree-optimization/102943
* gimple-range-cache.cc (class update_list): New.
(update_list::add): Replace add_to_update.
(update_list::pop): New.
(ranger_cache::ranger_cache): Adjust.
(ranger_cache::~ranger_cache): Adjust.
(ranger_cache::add_to_update): Delete.
(ranger_cache::propagate_cache): Adjust to new class.
(ranger_cache::propagate_updated_value): Ditto.
(ranger_cache::fill_block_cache): Ditto.
* gimple-range-cache.h (class ranger_cache): Adjust to update class.
Diffstat (limited to 'gcc/gimple-range-cache.h')
-rw-r--r-- | gcc/gimple-range-cache.h | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/gcc/gimple-range-cache.h b/gcc/gimple-range-cache.h index 7510500..49c13d1 100644 --- a/gcc/gimple-range-cache.h +++ b/gcc/gimple-range-cache.h @@ -114,7 +114,6 @@ private: ssa_global_cache m_globals; block_range_cache m_on_entry; class temporal_cache *m_temporal; - void add_to_update (basic_block bb); void fill_block_cache (tree name, basic_block bb, basic_block def_bb); void propagate_cache (tree name); @@ -122,9 +121,8 @@ private: void entry_range (irange &r, tree expr, basic_block bb); void exit_range (irange &r, tree expr, basic_block bb); - bitmap m_propfail; vec<basic_block> m_workback; - vec<basic_block> m_update_list; + class update_list *m_update; }; #endif // GCC_SSA_RANGE_CACHE_H |