GCC Middle and Back End API Reference
|
#include <store.h>
Public Member Functions | |
bit_range (bit_offset_t start_bit_offset, bit_size_t size_in_bits) | |
void | dump_to_pp (pretty_printer *pp) const |
void | dump () const |
std::unique_ptr< json::object > | to_json () const |
bool | empty_p () const |
bit_offset_t | get_start_bit_offset () const |
bit_offset_t | get_next_bit_offset () const |
bit_offset_t | get_last_bit_offset () const |
bool | contains_p (bit_offset_t offset) const |
bool | contains_p (const bit_range &other, bit_range *out) const |
bool | operator== (const bit_range &other) const |
bool | intersects_p (const bit_range &other) const |
bool | intersects_p (const bit_range &other, bit_size_t *out_num_overlap_bits) const |
bool | intersects_p (const bit_range &other, bit_range *out_this, bit_range *out_other) const |
bool | exceeds_p (const bit_range &other, bit_range *out_overhanging_bit_range) const |
bool | falls_short_of_p (bit_offset_t offset, bit_range *out_fall_short_bits) const |
bit_range | operator- (bit_offset_t offset) const |
bool | as_byte_range (byte_range *out) const |
Static Public Member Functions | |
static int | cmp (const bit_range &br1, const bit_range &br2) |
static bool | from_mask (unsigned HOST_WIDE_INT mask, bit_range *out) |
Data Fields | |
bit_offset_t | m_start_bit_offset |
bit_size_t | m_size_in_bits |
A concrete range of bits.
|
inline |
bool ana::bit_range::as_byte_range | ( | byte_range * | out | ) | const |
Referenced by ana::access_range::as_concrete_byte_range().
|
inline |
References get_next_bit_offset(), get_start_bit_offset(), and offset.
Referenced by ana::record_layout::item::contains_p().
void ana::bit_range::dump | ( | ) | const |
void ana::bit_range::dump_to_pp | ( | pretty_printer * | pp | ) | const |
Referenced by ana::record_layout::item::dump_to_pp().
|
inline |
References m_size_in_bits.
Referenced by get_last_bit_offset().
bool ana::bit_range::exceeds_p | ( | const bit_range & | other, |
bit_range * | out_overhanging_bit_range ) const |
bool ana::bit_range::falls_short_of_p | ( | bit_offset_t | offset, |
bit_range * | out_fall_short_bits ) const |
|
inline |
References empty_p(), gcc_assert, and get_next_bit_offset().
|
inline |
References m_size_in_bits, and m_start_bit_offset.
Referenced by contains_p(), get_last_bit_offset(), ana::concrete_binding::get_next_bit_offset(), ana::record_layout::item::get_next_bit_offset(), and intersects_p().
|
inline |
References m_start_bit_offset.
Referenced by contains_p(), ana::store_manager::get_concrete_binding(), ana::record_layout::item::get_start_bit_offset(), and intersects_p().
References get_next_bit_offset(), and get_start_bit_offset().
bool ana::bit_range::intersects_p | ( | const bit_range & | other, |
bit_range * | out_this, | ||
bit_range * | out_other ) const |
bool ana::bit_range::intersects_p | ( | const bit_range & | other, |
bit_size_t * | out_num_overlap_bits ) const |
bit_range ana::bit_range::operator- | ( | bit_offset_t | offset | ) | const |
References m_size_in_bits, and m_start_bit_offset.
std::unique_ptr< json::object > ana::bit_range::to_json | ( | ) | const |
bit_size_t ana::bit_range::m_size_in_bits |
Referenced by ana::concrete_binding::concrete_binding(), empty_p(), ana::store_manager::get_concrete_binding(), get_next_bit_offset(), ana::concrete_binding::get_size_in_bits(), ana::bit_range_region::key_t::hash(), ana::concrete_binding::hash(), ana::concrete_binding::is_deleted(), ana::concrete_binding::is_empty(), ana::concrete_binding::mark_deleted(), ana::concrete_binding::mark_empty(), and operator==().
bit_offset_t ana::bit_range::m_start_bit_offset |