diff options
author | Aldy Hernandez <aldyh@redhat.com> | 2022-07-03 15:25:38 +0200 |
---|---|---|
committer | Aldy Hernandez <aldyh@redhat.com> | 2022-07-03 17:33:23 +0200 |
commit | 3ae9def08565c36af2dc0bff495545ee1e9db642 (patch) | |
tree | 2dc04b1d77cc6cf291fa183a0c6a74deea50708b /gcc/gimple-range-edge.h | |
parent | 17f2e2b77b6610afb8fafd41d0537d3e4429efe0 (diff) | |
download | gcc-3ae9def08565c36af2dc0bff495545ee1e9db642.zip gcc-3ae9def08565c36af2dc0bff495545ee1e9db642.tar.gz gcc-3ae9def08565c36af2dc0bff495545ee1e9db642.tar.bz2 |
Move range allocator code to value-range-storage.*
Now that vrange_storage is in its own file, I think it's prudent to
move all the vrange allocator code there since it's all related.
The users of value-range.h do not need to know the implementation
details of the storage facilities.
Tested and benchmarked on x86-64 Linux.
gcc/ChangeLog:
* gimple-range-cache.cc: Include value-range-storage.h.
* gimple-range-cache.h (class block_range_cache): Add "class" to
m_range_allocator.
* gimple-range-edge.cc
(gimple_outgoing_range::gimple_outgoing_range): Allocate allocator.
(gimple_outgoing_range::~gimple_outgoing_range): Free allocator.
(gimple_outgoing_range::calc_switch_ranges): Dereference allocator.
* gimple-range-edge.h: Add "class" to m_range_allocator.
* gimple-range-infer.cc
(infer_range_manager::infer_range_manager): Allocate allocator.
(infer_range_manager::~infer_range_manager): Free allocator.
(infer_range_manager::get_nonzero): Dereference allocator.
(infer_range_manager::add_range): Same.
* gimple-range-infer.h (class vrange_allocator): Add "class" to
m_range_allocator.
* value-range-storage.h (class vrange_allocator): Move from
value-range.h.
(class obstack_vrange_allocator): Same.
(class ggc_vrange_allocator): Same.
(vrange_allocator::alloc_vrange): Same.
(vrange_allocator::alloc_irange): Same.
* value-range.h (class vrange_allocator): Move to value-range-storage.h.
(class obstack_vrange_allocator): Same.
(class ggc_vrange_allocator): Same.
Diffstat (limited to 'gcc/gimple-range-edge.h')
-rw-r--r-- | gcc/gimple-range-edge.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/gimple-range-edge.h b/gcc/gimple-range-edge.h index c81b943..1a4dee9 100644 --- a/gcc/gimple-range-edge.h +++ b/gcc/gimple-range-edge.h @@ -47,7 +47,7 @@ private: int m_max_edges; hash_map<edge, irange *> *m_edge_table; - obstack_vrange_allocator m_range_allocator; + class obstack_vrange_allocator *m_range_allocator; }; // If there is a range control statement at the end of block BB, return it. |