GCC Middle and Back End API Reference
|
#include <gimple-range-cache.h>
Public Member Functions | |
block_range_cache () | |
~block_range_cache () | |
bool | set_bb_range (tree name, const_basic_block bb, const vrange &v) |
bool | get_bb_range (vrange &v, tree name, const_basic_block bb) |
bool | bb_range_p (tree name, const_basic_block bb) |
void | dump (FILE *f) |
void | dump (FILE *f, basic_block bb, bool print_varying=true) |
Private Member Functions | |
ssa_block_ranges & | get_block_ranges (tree name) |
ssa_block_ranges * | query_block_ranges (tree name) |
Private Attributes | |
vec< class ssa_block_ranges * > | m_ssa_ranges |
class vrange_allocator * | m_range_allocator |
bitmap_obstack | m_bitmaps |
Header file for gimple ranger SSA cache. Copyright (C) 2017-2024 Free Software Foundation, Inc. Contributed by Andrew MacLeod <amacleod@redhat.com>. This file is part of GCC. GCC is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GCC; see the file COPYING3. If not see <http://www.gnu.org/licenses/>.
block_range_cache::block_range_cache | ( | ) |
References bitmap_obstack_initialize(), m_bitmaps, m_range_allocator, m_ssa_ranges, and num_ssa_names.
block_range_cache::~block_range_cache | ( | ) |
References bitmap_obstack_release(), m_bitmaps, m_range_allocator, and m_ssa_ranges.
bool block_range_cache::bb_range_p | ( | tree | name, |
const_basic_block | bb ) |
void block_range_cache::dump | ( | FILE * | f | ) |
References m_ssa_ranges, print_generic_expr(), ssa_name, and TDF_NONE.
Referenced by ranger_cache::dump_bb().
void block_range_cache::dump | ( | FILE * | f, |
basic_block | bb, | ||
bool | print_varying = true ) |
References get_bb_range(), gimple_range_ssa_p(), m_ssa_ranges, print_generic_expr(), r, ssa_name, TDF_NONE, and TREE_TYPE.
bool block_range_cache::get_bb_range | ( | vrange & | v, |
tree | name, | ||
const_basic_block | bb ) |
|
private |
|
inlineprivate |
References m_ssa_ranges, NULL, and SSA_NAME_VERSION.
Referenced by bb_range_p(), and get_bb_range().
bool block_range_cache::set_bb_range | ( | tree | name, |
const_basic_block | bb, | ||
const vrange & | v ) |
References vrange_allocator::alloc(), cfun, last_basic_block_for_fn, m_bitmaps, m_range_allocator, m_ssa_ranges, num_ssa_names, r, SSA_NAME_VERSION, and TREE_TYPE.
Referenced by ranger_cache::fill_block_cache(), ranger_cache::propagate_cache(), ranger_cache::register_inferred_value(), and ranger_cache::resolve_dom().
|
private |
Referenced by block_range_cache(), set_bb_range(), and ~block_range_cache().
|
private |
Referenced by block_range_cache(), set_bb_range(), and ~block_range_cache().
|
private |
Referenced by block_range_cache(), dump(), dump(), query_block_ranges(), set_bb_range(), and ~block_range_cache().