< prev index next >

src/hotspot/share/gc/z/zBarrierSet.hpp

Print this page

134     static oop oop_atomic_xchg_in_heap(oop* p, oop new_value)       { return oop_atomic_xchg_in_heap((zpointer*)p, new_value); }
135     static oop oop_atomic_xchg_in_heap(narrowOop* p, oop new_value) { unsupported(); return nullptr; }
136     static oop oop_atomic_xchg_in_heap_at(oop base, ptrdiff_t offset, oop new_value);
137 
138     static OopCopyResult oop_arraycopy_in_heap(arrayOop src_obj, size_t src_offset_in_bytes, zpointer* src_raw,
139                                                arrayOop dst_obj, size_t dst_offset_in_bytes, zpointer* dst_raw,
140                                                size_t length);
141     static OopCopyResult oop_arraycopy_in_heap(arrayOop src_obj, size_t src_offset_in_bytes, oop* src_raw,
142                                                arrayOop dst_obj, size_t dst_offset_in_bytes, oop* dst_raw,
143                                                size_t length) {
144       return oop_arraycopy_in_heap(src_obj, src_offset_in_bytes, (zpointer*)src_raw,
145                                    dst_obj, dst_offset_in_bytes, (zpointer*)dst_raw,
146                                    length);
147     }
148     static OopCopyResult oop_arraycopy_in_heap(arrayOop src_obj, size_t src_offset_in_bytes, narrowOop* src_raw,
149                                                arrayOop dst_obj, size_t dst_offset_in_bytes, narrowOop* dst_raw,
150                                                size_t length) { unsupported(); }
151 
152     static void clone_in_heap(oop src, oop dst, size_t size);
153 


154     //
155     // Not in heap
156     //
157     static oop oop_load_not_in_heap(zpointer* p);
158     static oop oop_load_not_in_heap(oop* p);
159     static oop oop_load_not_in_heap(narrowOop* p) { unsupported(); return nullptr; }
160 
161     static oop oop_atomic_cmpxchg_not_in_heap(zpointer* p, oop compare_value, oop new_value);
162     static oop oop_atomic_cmpxchg_not_in_heap(oop* p, oop compare_value, oop new_value) {
163       return oop_atomic_cmpxchg_not_in_heap((zpointer*)p, compare_value, new_value);
164     }
165     static oop oop_atomic_cmpxchg_not_in_heap(narrowOop* addr, oop compare_value, oop new_value) { unsupported(); return nullptr; }
166 
167     static oop oop_atomic_xchg_not_in_heap(zpointer* p, oop new_value);
168     static oop oop_atomic_xchg_not_in_heap(oop* p, oop new_value)       { return oop_atomic_xchg_not_in_heap((zpointer*)p, new_value); }
169     static oop oop_atomic_xchg_not_in_heap(narrowOop* p, oop new_value) { unsupported(); return nullptr; }
170   };
171 };
172 
173 template<> struct BarrierSet::GetName<ZBarrierSet> {

134     static oop oop_atomic_xchg_in_heap(oop* p, oop new_value)       { return oop_atomic_xchg_in_heap((zpointer*)p, new_value); }
135     static oop oop_atomic_xchg_in_heap(narrowOop* p, oop new_value) { unsupported(); return nullptr; }
136     static oop oop_atomic_xchg_in_heap_at(oop base, ptrdiff_t offset, oop new_value);
137 
138     static OopCopyResult oop_arraycopy_in_heap(arrayOop src_obj, size_t src_offset_in_bytes, zpointer* src_raw,
139                                                arrayOop dst_obj, size_t dst_offset_in_bytes, zpointer* dst_raw,
140                                                size_t length);
141     static OopCopyResult oop_arraycopy_in_heap(arrayOop src_obj, size_t src_offset_in_bytes, oop* src_raw,
142                                                arrayOop dst_obj, size_t dst_offset_in_bytes, oop* dst_raw,
143                                                size_t length) {
144       return oop_arraycopy_in_heap(src_obj, src_offset_in_bytes, (zpointer*)src_raw,
145                                    dst_obj, dst_offset_in_bytes, (zpointer*)dst_raw,
146                                    length);
147     }
148     static OopCopyResult oop_arraycopy_in_heap(arrayOop src_obj, size_t src_offset_in_bytes, narrowOop* src_raw,
149                                                arrayOop dst_obj, size_t dst_offset_in_bytes, narrowOop* dst_raw,
150                                                size_t length) { unsupported(); }
151 
152     static void clone_in_heap(oop src, oop dst, size_t size);
153 
154     static void value_copy_in_heap(void* src, void* dst, InlineKlass* md, LayoutKind lk);
155 
156     //
157     // Not in heap
158     //
159     static oop oop_load_not_in_heap(zpointer* p);
160     static oop oop_load_not_in_heap(oop* p);
161     static oop oop_load_not_in_heap(narrowOop* p) { unsupported(); return nullptr; }
162 
163     static oop oop_atomic_cmpxchg_not_in_heap(zpointer* p, oop compare_value, oop new_value);
164     static oop oop_atomic_cmpxchg_not_in_heap(oop* p, oop compare_value, oop new_value) {
165       return oop_atomic_cmpxchg_not_in_heap((zpointer*)p, compare_value, new_value);
166     }
167     static oop oop_atomic_cmpxchg_not_in_heap(narrowOop* addr, oop compare_value, oop new_value) { unsupported(); return nullptr; }
168 
169     static oop oop_atomic_xchg_not_in_heap(zpointer* p, oop new_value);
170     static oop oop_atomic_xchg_not_in_heap(oop* p, oop new_value)       { return oop_atomic_xchg_not_in_heap((zpointer*)p, new_value); }
171     static oop oop_atomic_xchg_not_in_heap(narrowOop* p, oop new_value) { unsupported(); return nullptr; }
172   };
173 };
174 
175 template<> struct BarrierSet::GetName<ZBarrierSet> {
< prev index next >