Abstract ranger cache update list.
authorAndrew MacLeod <amacleod@redhat.com>
Thu, 4 Nov 2021 19:08:06 +0000 (15:08 -0400)
committerAndrew MacLeod <amacleod@redhat.com>
Fri, 5 Nov 2021 17:15:19 +0000 (13:15 -0400)
commit98244c68e77cf75f93b66ee02df059f718c3fbc0
tree2495475ee19889024e88e4c8bfbdf730b3698ea6
parenta79fe53d6ce6074d083e925b6b19773e45817405
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.
gcc/gimple-range-cache.cc
gcc/gimple-range-cache.h