diff options
author | Jeff Law <law@redhat.com> | 2017-11-22 13:31:14 -0700 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 2017-11-22 13:31:14 -0700 |
commit | a5de02e9e3efdcdacc5dc100b61d1fd45e719955 (patch) | |
tree | 97da5bea9a9415baae6f7880c5b5f649e95dff73 /gcc/tree-vrp.c | |
parent | 16d24520af1ad5ff832d243f177d88f08a1ba012 (diff) | |
download | gcc-a5de02e9e3efdcdacc5dc100b61d1fd45e719955.zip gcc-a5de02e9e3efdcdacc5dc100b61d1fd45e719955.tar.gz gcc-a5de02e9e3efdcdacc5dc100b61d1fd45e719955.tar.bz2 |
* gimple-ssa-evrp-analyze.c (evrp_range_analyzer::evrp_range_analyzer)
Initialize vr_values.
(evrp_range_analyzer::try_find_new_range): Call methods attached to
vr_values via vr_values class instance rather than delegators.
(evrp_range_analyzer::record_ranges_from_phis): Likewise.
(evrp_range_analyzer::record_ranges_from_stmt): Likewise.
(evrp_range_analyzer::push_value_range): Likewise.
(evrp_range_analyzer::pop_value_range): Likewise.
* gimple-ssa-evrp-analyze.h (class evrp_range_analyzer): Remove
most delegators. Those remaining are exposed as public interfaces.
Make vr_values a pointer and private.
(evrp_range_analyzer::~evrp_range_analyzer): Delete the attached
vr_values.
(evrp_range_analyzer::get_vr_value): New method.
* gimple-ssa-evrp.c (class evrp_folder): Use DISABLE_COPY_AND_ASSIGN.
(evrp_folder::evrp_folder): New ctor to initialize vr_values.
(class evrp_dom_walker): Attach evrp_folder class, initialize
it in the ctor. Remove temporary delegators.
(evrp_dom_walker::before_dom_children): Call methods in attached
evrp_range_analyzer class via class instance pointer. Use
free value_range_constant_singleton to remove need for
op_with_constant_singleton_value delegator method. Do not
create a vrp_prop class instance for every call! Narrow
scope of a couple variables.
(evrp_dom_walker::cleanup): Call methods in attached
evrp_range_analyzer class via class instance pointer.
* vr-values.h (class vr_values): Privatize many methods and
data members.
From-SVN: r255074
Diffstat (limited to 'gcc/tree-vrp.c')
0 files changed, 0 insertions, 0 deletions