Lines Matching refs:offset

164 #define DEF_PRIMITIVE_ACCESSORS(holder, name, offset, type)     \
165 type holder::name() const { return ReadField<type>(offset); } \
166 void holder::set_##name(type value) { WriteField<type>(offset, value); }
168 #define INT_ACCESSORS(holder, name, offset) \
169 DEF_PRIMITIVE_ACCESSORS(holder, name, offset, int)
171 #define INT32_ACCESSORS(holder, name, offset) \
172 DEF_PRIMITIVE_ACCESSORS(holder, name, offset, int32_t)
174 #define UINT16_ACCESSORS(holder, name, offset) \
175 DEF_PRIMITIVE_ACCESSORS(holder, name, offset, uint16_t)
177 #define UINT8_ACCESSORS(holder, name, offset) \
178 DEF_PRIMITIVE_ACCESSORS(holder, name, offset, uint8_t)
180 #define RELAXED_INT32_ACCESSORS(holder, name, offset) \
182 return RELAXED_READ_INT32_FIELD(*this, offset); \
185 RELAXED_WRITE_INT32_FIELD(*this, offset, value); \
188 #define RELAXED_UINT16_ACCESSORS(holder, name, offset) \
190 return RELAXED_READ_UINT16_FIELD(*this, offset); \
193 RELAXED_WRITE_UINT16_FIELD(*this, offset, value); \
196 #define ACCESSORS_CHECKED2(holder, name, type, offset, get_condition, \
199 type value = TaggedField<type, offset>::load(cage_base, *this); \
205 TaggedField<type, offset>::store(*this, value); \
206 CONDITIONAL_WRITE_BARRIER(*this, offset, value, mode); \
209 #define ACCESSORS_CHECKED(holder, name, type, offset, condition) \
210 ACCESSORS_CHECKED2(holder, name, type, offset, condition, condition)
212 #define ACCESSORS(holder, name, type, offset) \
213 ACCESSORS_CHECKED(holder, name, type, offset, true)
229 #define ACCESSORS_RELAXED_CHECKED2(holder, name, type, offset, get_condition, \
236 type value = TaggedField<type, offset>::Relaxed_Load(cage_base, *this); \
242 TaggedField<type, offset>::Relaxed_Store(*this, value); \
243 CONDITIONAL_WRITE_BARRIER(*this, offset, value, mode); \
246 #define ACCESSORS_RELAXED_CHECKED(holder, name, type, offset, condition) \
247 ACCESSORS_RELAXED_CHECKED2(holder, name, type, offset, condition, condition)
249 #define ACCESSORS_RELAXED(holder, name, type, offset) \
250 ACCESSORS_RELAXED_CHECKED(holder, name, type, offset, true)
253 #define RELAXED_ACCESSORS_CHECKED2(holder, name, type, offset, get_condition, \
256 type value = TaggedField<type, offset>::Relaxed_Load(cage_base, *this); \
263 TaggedField<type, offset>::Relaxed_Store(*this, value); \
264 CONDITIONAL_WRITE_BARRIER(*this, offset, value, mode); \
267 #define RELAXED_ACCESSORS_CHECKED(holder, name, type, offset, condition) \
268 RELAXED_ACCESSORS_CHECKED2(holder, name, type, offset, condition, condition)
270 #define RELAXED_ACCESSORS(holder, name, type, offset) \
271 RELAXED_ACCESSORS_CHECKED(holder, name, type, offset, true)
273 #define RELEASE_ACQUIRE_ACCESSORS_CHECKED2(holder, name, type, offset, \
276 type value = TaggedField<type, offset>::Acquire_Load(cage_base, *this); \
283 TaggedField<type, offset>::Release_Store(*this, value); \
284 CONDITIONAL_WRITE_BARRIER(*this, offset, value, mode); \
287 #define RELEASE_ACQUIRE_ACCESSORS_CHECKED(holder, name, type, offset, \
289 RELEASE_ACQUIRE_ACCESSORS_CHECKED2(holder, name, type, offset, condition, \
292 #define RELEASE_ACQUIRE_ACCESSORS(holder, name, type, offset) \
293 RELEASE_ACQUIRE_ACCESSORS_CHECKED(holder, name, type, offset, true)
295 #define WEAK_ACCESSORS_CHECKED2(holder, name, offset, get_condition, \
299 TaggedField<MaybeObject, offset>::load(cage_base, *this); \
305 TaggedField<MaybeObject, offset>::store(*this, value); \
306 CONDITIONAL_WEAK_WRITE_BARRIER(*this, offset, value, mode); \
309 #define WEAK_ACCESSORS_CHECKED(holder, name, offset, condition) \
310 WEAK_ACCESSORS_CHECKED2(holder, name, offset, condition, condition)
312 #define WEAK_ACCESSORS(holder, name, offset) \
313 WEAK_ACCESSORS_CHECKED(holder, name, offset, true)
315 #define RELEASE_ACQUIRE_WEAK_ACCESSORS_CHECKED2(holder, name, offset, \
319 TaggedField<MaybeObject, offset>::Acquire_Load(cage_base, *this); \
326 TaggedField<MaybeObject, offset>::Release_Store(*this, value); \
327 CONDITIONAL_WEAK_WRITE_BARRIER(*this, offset, value, mode); \
330 #define RELEASE_ACQUIRE_WEAK_ACCESSORS_CHECKED(holder, name, offset, \
332 RELEASE_ACQUIRE_WEAK_ACCESSORS_CHECKED2(holder, name, offset, condition, \
335 #define RELEASE_ACQUIRE_WEAK_ACCESSORS(holder, name, offset) \
336 RELEASE_ACQUIRE_WEAK_ACCESSORS_CHECKED(holder, name, offset, true)
339 #define SMI_ACCESSORS_CHECKED(holder, name, offset, condition) \
342 Smi value = TaggedField<Smi, offset>::load(*this); \
347 TaggedField<Smi, offset>::store(*this, Smi::FromInt(value)); \
350 #define SMI_ACCESSORS(holder, name, offset) \
351 SMI_ACCESSORS_CHECKED(holder, name, offset, true)
357 #define RELEASE_ACQUIRE_SMI_ACCESSORS(holder, name, offset) \
359 Smi value = TaggedField<Smi, offset>::Acquire_Load(*this); \
363 TaggedField<Smi, offset>::Release_Store(*this, Smi::FromInt(value)); \
370 #define RELAXED_SMI_ACCESSORS(holder, name, offset) \
372 Smi value = TaggedField<Smi, offset>::Relaxed_Load(*this); \
376 TaggedField<Smi, offset>::Relaxed_Store(*this, Smi::FromInt(value)); \
379 #define BOOL_GETTER(holder, field, name, offset) \
380 bool holder::name() const { return BooleanBit::get(field(), offset); }
382 #define BOOL_ACCESSORS(holder, field, name, offset) \
383 bool holder::name() const { return BooleanBit::get(field(), offset); } \
385 set_##field(BooleanBit::set(field(), offset, value)); \
392 #define RELAXED_BOOL_ACCESSORS(holder, field, name, offset) \
394 return BooleanBit::get(field(kRelaxedLoad), offset); \
397 set_##field(BooleanBit::set(field(kRelaxedLoad), offset, value), \
412 #define RELAXED_INT16_ACCESSORS(holder, name, offset) \
414 return RELAXED_READ_INT16_FIELD(*this, offset); \
417 RELAXED_WRITE_INT16_FIELD(*this, offset, value); \
420 #define FIELD_ADDR(p, offset) ((p).ptr() + offset - kHeapObjectTag)
422 #define SEQ_CST_READ_FIELD(p, offset) \
423 TaggedField<Object>::SeqCst_Load(p, offset)
425 #define ACQUIRE_READ_FIELD(p, offset) \
426 TaggedField<Object>::Acquire_Load(p, offset)
428 #define RELAXED_READ_FIELD(p, offset) \
429 TaggedField<Object>::Relaxed_Load(p, offset)
431 #define RELAXED_READ_WEAK_FIELD(p, offset) \
432 TaggedField<MaybeObject>::Relaxed_Load(p, offset)
434 #define WRITE_FIELD(p, offset, value) \
435 TaggedField<Object>::store(p, offset, value)
437 #define SEQ_CST_WRITE_FIELD(p, offset, value) \
438 TaggedField<Object>::SeqCst_Store(p, offset, value)
440 #define RELEASE_WRITE_FIELD(p, offset, value) \
441 TaggedField<Object>::Release_Store(p, offset, value)
443 #define RELAXED_WRITE_FIELD(p, offset, value) \
444 TaggedField<Object>::Relaxed_Store(p, offset, value)
446 #define RELAXED_WRITE_WEAK_FIELD(p, offset, value) \
447 TaggedField<MaybeObject>::Relaxed_Store(p, offset, value)
450 #define WRITE_BARRIER(object, offset, value)
452 #define WRITE_BARRIER(object, offset, value) \
455 WriteBarrier::Marking(object, (object).RawField(offset), value); \
456 GenerationalBarrier(object, (object).RawField(offset), value); \
461 #define WEAK_WRITE_BARRIER(object, offset, value)
463 #define WEAK_WRITE_BARRIER(object, offset, value) \
466 WriteBarrier::Marking(object, (object).RawMaybeWeakField(offset), value); \
467 GenerationalBarrier(object, (object).RawMaybeWeakField(offset), value); \
472 #define EPHEMERON_KEY_WRITE_BARRIER(object, offset, value)
474 #define EPHEMERON_KEY_WRITE_BARRIER(object, offset, value) \
475 WRITE_BARRIER(object, offset, value)
477 #define EPHEMERON_KEY_WRITE_BARRIER(object, offset, value) \
481 WriteBarrier::Marking(object, (object).RawField(offset), value); \
482 GenerationalEphemeronKeyBarrier(table, (object).RawField(offset), value); \
487 #define CONDITIONAL_WRITE_BARRIER(object, offset, value, mode)
489 #define CONDITIONAL_WRITE_BARRIER(object, offset, value, mode) \
490 WRITE_BARRIER(object, offset, value)
492 #define CONDITIONAL_WRITE_BARRIER(object, offset, value, mode) \
498 WriteBarrier::Marking(object, (object).RawField(offset), value); \
500 GenerationalBarrier(object, (object).RawField(offset), value); \
508 #define CONDITIONAL_WEAK_WRITE_BARRIER(object, offset, value, mode)
510 #define CONDITIONAL_WEAK_WRITE_BARRIER(object, offset, value, mode) \
511 WRITE_BARRIER(object, offset, value)
513 #define CONDITIONAL_WEAK_WRITE_BARRIER(object, offset, value, mode) \
519 WriteBarrier::Marking(object, (object).RawMaybeWeakField(offset), \
522 GenerationalBarrier(object, (object).RawMaybeWeakField(offset), value); \
530 #define CONDITIONAL_EPHEMERON_KEY_WRITE_BARRIER(object, offset, value, mode)
532 #define CONDITIONAL_EPHEMERON_KEY_WRITE_BARRIER(object, offset, value, mode) \
539 WriteBarrier::Marking(object, (object).RawField(offset), value); \
541 GenerationalEphemeronKeyBarrier(table, (object).RawField(offset), \
549 #define ACQUIRE_READ_INT8_FIELD(p, offset) \
551 reinterpret_cast<const base::Atomic8*>(FIELD_ADDR(p, offset))))
553 #define ACQUIRE_READ_INT32_FIELD(p, offset) \
555 reinterpret_cast<const base::Atomic32*>(FIELD_ADDR(p, offset))))
557 #define RELAXED_WRITE_INT8_FIELD(p, offset, value) \
558 base::Relaxed_Store(reinterpret_cast<base::Atomic8*>(FIELD_ADDR(p, offset)), \
560 #define RELAXED_READ_INT8_FIELD(p, offset) \
562 reinterpret_cast<const base::Atomic8*>(FIELD_ADDR(p, offset))))
564 #define RELAXED_READ_UINT16_FIELD(p, offset) \
566 reinterpret_cast<const base::Atomic16*>(FIELD_ADDR(p, offset))))
568 #define RELAXED_WRITE_UINT16_FIELD(p, offset, value) \
570 reinterpret_cast<base::Atomic16*>(FIELD_ADDR(p, offset)), \
573 #define RELAXED_READ_INT16_FIELD(p, offset) \
575 reinterpret_cast<const base::Atomic16*>(FIELD_ADDR(p, offset))))
577 #define RELAXED_WRITE_INT16_FIELD(p, offset, value) \
579 reinterpret_cast<base::Atomic16*>(FIELD_ADDR(p, offset)), \
582 #define RELAXED_READ_UINT32_FIELD(p, offset) \
584 reinterpret_cast<const base::Atomic32*>(FIELD_ADDR(p, offset))))
586 #define ACQUIRE_READ_UINT32_FIELD(p, offset) \
588 reinterpret_cast<const base::Atomic32*>(FIELD_ADDR(p, offset))))
590 #define RELAXED_WRITE_UINT32_FIELD(p, offset, value) \
592 reinterpret_cast<base::Atomic32*>(FIELD_ADDR(p, offset)), \
595 #define RELEASE_WRITE_INT8_FIELD(p, offset, value) \
596 base::Release_Store(reinterpret_cast<base::Atomic8*>(FIELD_ADDR(p, offset)), \
599 #define RELEASE_WRITE_UINT32_FIELD(p, offset, value) \
601 reinterpret_cast<base::Atomic32*>(FIELD_ADDR(p, offset)), \
604 #define RELAXED_READ_INT32_FIELD(p, offset) \
606 reinterpret_cast<const base::Atomic32*>(FIELD_ADDR(p, offset))))
608 #define RELEASE_WRITE_INT32_FIELD(p, offset, value) \
610 reinterpret_cast<base::Atomic32*>(FIELD_ADDR(p, offset)), \
613 #define RELAXED_WRITE_INT32_FIELD(p, offset, value) \
615 reinterpret_cast<base::Atomic32*>(FIELD_ADDR(p, offset)), \
621 #define RELAXED_READ_INT_FIELD(p, offset) RELAXED_READ_INT32_FIELD(p, offset)
623 #define RELAXED_WRITE_INT_FIELD(p, offset, value) \
624 RELAXED_WRITE_INT32_FIELD(p, offset, value)
629 #define RELAXED_READ_UINT_FIELD(p, offset) RELAXED_READ_UINT32_FIELD(p, offset)
631 #define RELAXED_WRITE_UINT_FIELD(p, offset, value) \
632 RELAXED_WRITE_UINT32_FIELD(p, offset, value)
634 #define RELAXED_READ_BYTE_FIELD(p, offset) \
636 reinterpret_cast<const base::Atomic8*>(FIELD_ADDR(p, offset))))
638 #define ACQUIRE_READ_BYTE_FIELD(p, offset) \
640 reinterpret_cast<const base::Atomic8*>(FIELD_ADDR(p, offset))))
642 #define RELAXED_WRITE_BYTE_FIELD(p, offset, value) \
643 base::Relaxed_Store(reinterpret_cast<base::Atomic8*>(FIELD_ADDR(p, offset)), \
646 #define RELEASE_WRITE_BYTE_FIELD(p, offset, value) \
647 base::Release_Store(reinterpret_cast<base::Atomic8*>(FIELD_ADDR(p, offset)), \