equal
deleted
inserted
replaced
24 |
24 |
25 #ifndef SHARE_VM_GC_SHARED_BARRIERSET_INLINE_HPP |
25 #ifndef SHARE_VM_GC_SHARED_BARRIERSET_INLINE_HPP |
26 #define SHARE_VM_GC_SHARED_BARRIERSET_INLINE_HPP |
26 #define SHARE_VM_GC_SHARED_BARRIERSET_INLINE_HPP |
27 |
27 |
28 #include "gc/shared/barrierSet.hpp" |
28 #include "gc/shared/barrierSet.hpp" |
|
29 #include "gc/shared/barrierSetConfig.inline.hpp" |
29 #include "utilities/align.hpp" |
30 #include "utilities/align.hpp" |
30 |
|
31 |
|
32 template <class T> void BarrierSet::write_ref_field_pre(T* field, oop new_val) { |
|
33 write_ref_field_pre_work(field, new_val); |
|
34 } |
|
35 |
|
36 void BarrierSet::write_ref_field(void* field, oop new_val, bool release) { |
|
37 write_ref_field_work(field, new_val, release); |
|
38 } |
|
39 |
31 |
40 // count is number of array elements being written |
32 // count is number of array elements being written |
41 void BarrierSet::write_ref_array(HeapWord* start, size_t count) { |
33 void BarrierSet::write_ref_array(HeapWord* start, size_t count) { |
42 assert(count <= (size_t)max_intx, "count too large"); |
34 assert(count <= (size_t)max_intx, "count too large"); |
43 HeapWord* end = (HeapWord*)((char*)start + (count*heapOopSize)); |
35 HeapWord* end = (HeapWord*)((char*)start + (count*heapOopSize)); |
58 assert(UseCompressedOops || (aligned_start == start && aligned_end == end), |
50 assert(UseCompressedOops || (aligned_start == start && aligned_end == end), |
59 "Expected heap word alignment of start and end"); |
51 "Expected heap word alignment of start and end"); |
60 write_ref_array_work(MemRegion(aligned_start, aligned_end)); |
52 write_ref_array_work(MemRegion(aligned_start, aligned_end)); |
61 } |
53 } |
62 |
54 |
63 |
|
64 inline void BarrierSet::write_region(MemRegion mr) { |
55 inline void BarrierSet::write_region(MemRegion mr) { |
65 write_region_work(mr); |
56 write_region_work(mr); |
66 } |
57 } |
67 |
58 |
68 #endif // SHARE_VM_GC_SHARED_BARRIERSET_INLINE_HPP |
59 #endif // SHARE_VM_GC_SHARED_BARRIERSET_INLINE_HPP |