Lines Matching refs:address

50         void           *_base;                              // base address of managed range
70 WriteBarrier(void *base, void *address, const usword_t size, const usword_t protect = 0)
71 : Range(address, size), _base(base), _protect(protect)
89 // Return the write barrier card index for the specified address.
91 inline const usword_t card_index(void *address) const {
92 uintptr_t normalized = (uintptr_t)address - (uintptr_t)_base;
102 // Returns true if the specified address is managed by this write-barrier.
104 inline bool contains_card(void *address) {
105 usword_t i = card_index(address);
113 // Return the base address of the range managed by the specified card index.
123 inline bool is_card_marked(usword_t i) { return ((unsigned char *)address())[i] != card_unmarked; }
132 ((unsigned char *)address())[i] = card_marked;
155 inline bool is_card_marked(void *address) {
156 usword_t i = card_index(address);
164 // Mark the write barrier card for the specified address.
166 inline void mark_card(void *address) {
167 const usword_t i = card_index(address);
175 // Mark the write barrier cards corresponding to the specified address range.
177 inline void mark_cards(void *address, const usword_t size) {
178 usword_t i = card_index(address);
179 const usword_t j = card_index(displace(address, size - 1));
199 void scan_marked_ranges(void *address, const usword_t size, write_barrier_scanner_t scanner);
200 void scan_marked_ranges(void *address, const usword_t size, void (*scanner) (const Range&, WriteBarrier*, void*), void *arg);
208 bool range_has_marked_cards(void *address, const usword_t size);