24
25 #ifndef SHARE_VM_GC_SHENANDOAH_SHENANDOAHHEAPREGIONSET_INLINE_HPP
26 #define SHARE_VM_GC_SHENANDOAH_SHENANDOAHHEAPREGIONSET_INLINE_HPP
27
28 #include "gc_implementation/shenandoah/shenandoahHeapRegionSet.hpp"
29 #include "gc_implementation/shenandoah/shenandoahHeap.hpp"
30 #include "gc_implementation/shenandoah/shenandoahHeap.inline.hpp"
31 #include "gc_implementation/shenandoah/shenandoahHeapRegion.hpp"
32
33 bool ShenandoahHeapRegionSet::is_in(size_t region_number) const {
34 assert(region_number < _heap->num_regions(), "Sanity");
35 return _set_map[region_number] == 1;
36 }
37
38 bool ShenandoahHeapRegionSet::is_in(ShenandoahHeapRegion* r) const {
39 return is_in(r->region_number());
40 }
41
42 bool ShenandoahHeapRegionSet::is_in(HeapWord* p) const {
43 assert(_heap->is_in(p), "Must be in the heap");
44 uintx index = ((uintx) p) >> ShenandoahHeapRegion::region_size_bytes_shift();
45 // no need to subtract the bottom of the heap from p,
46 // _biased_set_map is biased
47 return _biased_set_map[index] == 1;
48 }
49
50
51 #endif // SHARE_VM_GC_SHENANDOAH_SHENANDOAHHEAPREGIONSET_INLINE_HPP
|
24
25 #ifndef SHARE_VM_GC_SHENANDOAH_SHENANDOAHHEAPREGIONSET_INLINE_HPP
26 #define SHARE_VM_GC_SHENANDOAH_SHENANDOAHHEAPREGIONSET_INLINE_HPP
27
28 #include "gc_implementation/shenandoah/shenandoahHeapRegionSet.hpp"
29 #include "gc_implementation/shenandoah/shenandoahHeap.hpp"
30 #include "gc_implementation/shenandoah/shenandoahHeap.inline.hpp"
31 #include "gc_implementation/shenandoah/shenandoahHeapRegion.hpp"
32
33 bool ShenandoahHeapRegionSet::is_in(size_t region_number) const {
34 assert(region_number < _heap->num_regions(), "Sanity");
35 return _set_map[region_number] == 1;
36 }
37
38 bool ShenandoahHeapRegionSet::is_in(ShenandoahHeapRegion* r) const {
39 return is_in(r->region_number());
40 }
41
42 bool ShenandoahHeapRegionSet::is_in(HeapWord* p) const {
43 assert(_heap->is_in(p), "Must be in the heap");
44 uintx index = ((uintx) p) >> _region_size_bytes_shift;
45 // no need to subtract the bottom of the heap from p,
46 // _biased_set_map is biased
47 return _biased_set_map[index] == 1;
48 }
49
50
51 #endif // SHARE_VM_GC_SHENANDOAH_SHENANDOAHHEAPREGIONSET_INLINE_HPP
|