GCC Middle and Back End API Reference
infer_range_manager Class Reference

#include <gimple-range-infer.h>

Collaboration diagram for infer_range_manager:

Data Structures

class  exit_range_head
 

Public Member Functions

 infer_range_manager (bool do_search)
 
 ~infer_range_manager ()
 
void add_range (tree name, basic_block bb, const vrange &r)
 
void add_nonzero (tree name, basic_block bb)
 
bool has_range_p (tree name, basic_block bb)
 
bool has_range_p (basic_block bb)
 
bool maybe_adjust_range (vrange &r, tree name, basic_block bb)
 

Private Member Functions

void register_all_uses (tree name)
 
const vrangeget_nonzero (tree name)
 

Private Attributes

vec< exit_range_headm_on_exit
 
vec< vrange * > m_nonzero
 
bitmap m_seen
 
bitmap_obstack m_bitmaps
 
struct obstack m_list_obstack
 
class vrange_allocatorm_range_allocator
 

Constructor & Destructor Documentation

◆ infer_range_manager()

◆ ~infer_range_manager()

infer_range_manager::~infer_range_manager ( )

Member Function Documentation

◆ add_nonzero()

void infer_range_manager::add_nonzero ( tree name,
basic_block bb )

References add_range(), and get_nonzero().

◆ add_range()

◆ get_nonzero()

const vrange & infer_range_manager::get_nonzero ( tree name)
private

◆ has_range_p() [1/2]

bool infer_range_manager::has_range_p ( basic_block bb)

◆ has_range_p() [2/2]

◆ maybe_adjust_range()

◆ register_all_uses()

void infer_range_manager::register_all_uses ( tree name)
private

Field Documentation

◆ m_bitmaps

bitmap_obstack infer_range_manager::m_bitmaps
private

◆ m_list_obstack

struct obstack infer_range_manager::m_list_obstack
private

◆ m_nonzero

vec<vrange *> infer_range_manager::m_nonzero
private

◆ m_on_exit

◆ m_range_allocator

class vrange_allocator* infer_range_manager::m_range_allocator
private

◆ m_seen

bitmap infer_range_manager::m_seen
private

The documentation for this class was generated from the following files: