< prev index next >

src/hotspot/share/utilities/copy.hpp

Print this page

144 
145   // oops,                  conjoint, atomic on each oop
146   static void conjoint_oops_atomic(const oop* from, oop* to, size_t count) {
147     assert_params_ok(from, to, BytesPerHeapOop);
148     pd_conjoint_oops_atomic(from, to, count);
149   }
150 
151   // overloaded for UseCompressedOops
152   static void conjoint_oops_atomic(const narrowOop* from, narrowOop* to, size_t count) {
153     assert(sizeof(narrowOop) == sizeof(jint), "this cast is wrong");
154     assert_params_ok(from, to, BytesPerInt);
155     pd_conjoint_jints_atomic((const jint*)from, (jint*)to, count);
156   }
157 
158   // Copy a span of memory.  If the span is an integral number of aligned
159   // longs, words, or ints, copy those units atomically.
160   // The largest atomic transfer unit is 8 bytes, or the largest power
161   // of two which divides all of from, to, and size, whichever is smaller.
162   static void conjoint_memory_atomic(const void* from, void* to, size_t size);
163 


164   // bytes,                 conjoint array, atomic on each byte (not that it matters)
165   static void arrayof_conjoint_jbytes(const HeapWord* from, HeapWord* to, size_t count) {
166     pd_arrayof_conjoint_bytes(from, to, count);
167   }
168 
169   // jshorts,               conjoint array, atomic on each jshort
170   static void arrayof_conjoint_jshorts(const HeapWord* from, HeapWord* to, size_t count) {
171     assert_params_ok(from, to, BytesPerShort);
172     pd_arrayof_conjoint_jshorts(from, to, count);
173   }
174 
175   // jints,                 conjoint array, atomic on each jint
176   static void arrayof_conjoint_jints(const HeapWord* from, HeapWord* to, size_t count) {
177     assert_params_ok(from, to, BytesPerInt);
178     pd_arrayof_conjoint_jints(from, to, count);
179   }
180 
181   // jlongs,                conjoint array, atomic on each jlong
182   static void arrayof_conjoint_jlongs(const HeapWord* from, HeapWord* to, size_t count) {
183     assert_params_ok(from, to, BytesPerLong);

144 
145   // oops,                  conjoint, atomic on each oop
146   static void conjoint_oops_atomic(const oop* from, oop* to, size_t count) {
147     assert_params_ok(from, to, BytesPerHeapOop);
148     pd_conjoint_oops_atomic(from, to, count);
149   }
150 
151   // overloaded for UseCompressedOops
152   static void conjoint_oops_atomic(const narrowOop* from, narrowOop* to, size_t count) {
153     assert(sizeof(narrowOop) == sizeof(jint), "this cast is wrong");
154     assert_params_ok(from, to, BytesPerInt);
155     pd_conjoint_jints_atomic((const jint*)from, (jint*)to, count);
156   }
157 
158   // Copy a span of memory.  If the span is an integral number of aligned
159   // longs, words, or ints, copy those units atomically.
160   // The largest atomic transfer unit is 8 bytes, or the largest power
161   // of two which divides all of from, to, and size, whichever is smaller.
162   static void conjoint_memory_atomic(const void* from, void* to, size_t size);
163 
164   static void copy_value_content(const void* from, void* to, size_t size);
165 
166   // bytes,                 conjoint array, atomic on each byte (not that it matters)
167   static void arrayof_conjoint_jbytes(const HeapWord* from, HeapWord* to, size_t count) {
168     pd_arrayof_conjoint_bytes(from, to, count);
169   }
170 
171   // jshorts,               conjoint array, atomic on each jshort
172   static void arrayof_conjoint_jshorts(const HeapWord* from, HeapWord* to, size_t count) {
173     assert_params_ok(from, to, BytesPerShort);
174     pd_arrayof_conjoint_jshorts(from, to, count);
175   }
176 
177   // jints,                 conjoint array, atomic on each jint
178   static void arrayof_conjoint_jints(const HeapWord* from, HeapWord* to, size_t count) {
179     assert_params_ok(from, to, BytesPerInt);
180     pd_arrayof_conjoint_jints(from, to, count);
181   }
182 
183   // jlongs,                conjoint array, atomic on each jlong
184   static void arrayof_conjoint_jlongs(const HeapWord* from, HeapWord* to, size_t count) {
185     assert_params_ok(from, to, BytesPerLong);
< prev index next >