136 Copy::arrayof_conjoint_jshorts(reinterpret_cast<HeapWord*>(src),
137 reinterpret_cast<HeapWord*>(dst),
138 length);
139 }
140
141 template<>
142 void arraycopy_arrayof_conjoint<jint>(jint* src, jint* dst, size_t length) {
143 Copy::arrayof_conjoint_jints(reinterpret_cast<HeapWord*>(src),
144 reinterpret_cast<HeapWord*>(dst),
145 length);
146 }
147
148 template<>
149 void arraycopy_arrayof_conjoint<jlong>(jlong* src, jlong* dst, size_t length) {
150 Copy::arrayof_conjoint_jlongs(reinterpret_cast<HeapWord*>(src),
151 reinterpret_cast<HeapWord*>(dst),
152 length);
153 }
154
155 template<>
156 void arraycopy_conjoint_atomic<jbyte>(jbyte* src, jbyte* dst, size_t length) {
157 Copy::conjoint_jbytes_atomic(src, dst, length);
158 }
159
160 template<>
161 void arraycopy_conjoint_atomic<jshort>(jshort* src, jshort* dst, size_t length) {
162 Copy::conjoint_jshorts_atomic(src, dst, length);
163 }
164
165 template<>
166 void arraycopy_conjoint_atomic<jint>(jint* src, jint* dst, size_t length) {
167 Copy::conjoint_jints_atomic(src, dst, length);
168 }
169
170 template<>
171 void arraycopy_conjoint_atomic<jlong>(jlong* src, jlong* dst, size_t length) {
172 Copy::conjoint_jlongs_atomic(src, dst, length);
173 }
174 }
|
136 Copy::arrayof_conjoint_jshorts(reinterpret_cast<HeapWord*>(src),
137 reinterpret_cast<HeapWord*>(dst),
138 length);
139 }
140
141 template<>
142 void arraycopy_arrayof_conjoint<jint>(jint* src, jint* dst, size_t length) {
143 Copy::arrayof_conjoint_jints(reinterpret_cast<HeapWord*>(src),
144 reinterpret_cast<HeapWord*>(dst),
145 length);
146 }
147
148 template<>
149 void arraycopy_arrayof_conjoint<jlong>(jlong* src, jlong* dst, size_t length) {
150 Copy::arrayof_conjoint_jlongs(reinterpret_cast<HeapWord*>(src),
151 reinterpret_cast<HeapWord*>(dst),
152 length);
153 }
154
155 template<>
156 void arraycopy_conjoint<void>(void* src, void* dst, size_t length) {
157 Copy::conjoint_jbytes(reinterpret_cast<jbyte*>(src),
158 reinterpret_cast<jbyte*>(dst),
159 length);
160 }
161
162 template<>
163 void arraycopy_conjoint_atomic<jbyte>(jbyte* src, jbyte* dst, size_t length) {
164 Copy::conjoint_jbytes_atomic(src, dst, length);
165 }
166
167 template<>
168 void arraycopy_conjoint_atomic<jshort>(jshort* src, jshort* dst, size_t length) {
169 Copy::conjoint_jshorts_atomic(src, dst, length);
170 }
171
172 template<>
173 void arraycopy_conjoint_atomic<jint>(jint* src, jint* dst, size_t length) {
174 Copy::conjoint_jints_atomic(src, dst, length);
175 }
176
177 template<>
178 void arraycopy_conjoint_atomic<jlong>(jlong* src, jlong* dst, size_t length) {
179 Copy::conjoint_jlongs_atomic(src, dst, length);
180 }
181
182 template<>
183 void arraycopy_conjoint_atomic<void>(void* src, void* dst, size_t length) {
184 Copy::conjoint_memory_atomic(src, dst, length);
185 }
186 }
|