276 static address _dlog10;
277 static address _dpow;
278 static address _dsin;
279 static address _dcos;
280 static address _dlibm_sin_cos_huge;
281 static address _dlibm_reduce_pi04l;
282 static address _dlibm_tan_cot_huge;
283 static address _dtan;
284 static address _dtanh;
285 static address _fmod;
286
287 static address _f2hf;
288 static address _hf2f;
289
290 static address _method_entry_barrier;
291
292 static address _cont_thaw;
293 static address _cont_returnBarrier;
294 static address _cont_returnBarrierExc;
295
296 // Vector Math Routines
297 static address _vector_f_math[VectorSupport::NUM_VEC_SIZES][VectorSupport::NUM_VECTOR_OP_MATH];
298 static address _vector_d_math[VectorSupport::NUM_VEC_SIZES][VectorSupport::NUM_VECTOR_OP_MATH];
299
300 static address _upcall_stub_exception_handler;
301 static address _upcall_stub_load_target;
302
303 static address _lookup_secondary_supers_table_stubs[];
304 static address _lookup_secondary_supers_table_slow_path_stub;
305
306 public:
307 // Initialization/Testing
308 static void initialize_initial_stubs(); // must happen before universe::genesis
309 static void initialize_continuation_stubs(); // must happen after universe::genesis
310 static void initialize_compiler_stubs(); // must happen after universe::genesis
311 static void initialize_final_stubs(); // must happen after universe::genesis
312
313 static bool is_stub_code(address addr) { return contains(addr); }
314
315 static bool contains(address addr) {
525
526 static address select_fill_function(BasicType t, bool aligned, const char* &name);
527
528 //
529 // Default versions of the above arraycopy functions for platforms which do
530 // not have specialized versions
531 //
532 static void jbyte_copy (jbyte* src, jbyte* dest, size_t count);
533 static void jshort_copy (jshort* src, jshort* dest, size_t count);
534 static void jint_copy (jint* src, jint* dest, size_t count);
535 static void jlong_copy (jlong* src, jlong* dest, size_t count);
536 static void oop_copy (oop* src, oop* dest, size_t count);
537 static void oop_copy_uninit(oop* src, oop* dest, size_t count);
538
539 static void arrayof_jbyte_copy (HeapWord* src, HeapWord* dest, size_t count);
540 static void arrayof_jshort_copy (HeapWord* src, HeapWord* dest, size_t count);
541 static void arrayof_jint_copy (HeapWord* src, HeapWord* dest, size_t count);
542 static void arrayof_jlong_copy (HeapWord* src, HeapWord* dest, size_t count);
543 static void arrayof_oop_copy (HeapWord* src, HeapWord* dest, size_t count);
544 static void arrayof_oop_copy_uninit(HeapWord* src, HeapWord* dest, size_t count);
545 };
546
547 #endif // SHARE_RUNTIME_STUBROUTINES_HPP
|
276 static address _dlog10;
277 static address _dpow;
278 static address _dsin;
279 static address _dcos;
280 static address _dlibm_sin_cos_huge;
281 static address _dlibm_reduce_pi04l;
282 static address _dlibm_tan_cot_huge;
283 static address _dtan;
284 static address _dtanh;
285 static address _fmod;
286
287 static address _f2hf;
288 static address _hf2f;
289
290 static address _method_entry_barrier;
291
292 static address _cont_thaw;
293 static address _cont_returnBarrier;
294 static address _cont_returnBarrierExc;
295
296 static address _load_inline_type_fields_in_regs;
297 static address _store_inline_type_fields_to_buf;
298
299 // Vector Math Routines
300 static address _vector_f_math[VectorSupport::NUM_VEC_SIZES][VectorSupport::NUM_VECTOR_OP_MATH];
301 static address _vector_d_math[VectorSupport::NUM_VEC_SIZES][VectorSupport::NUM_VECTOR_OP_MATH];
302
303 static address _upcall_stub_exception_handler;
304 static address _upcall_stub_load_target;
305
306 static address _lookup_secondary_supers_table_stubs[];
307 static address _lookup_secondary_supers_table_slow_path_stub;
308
309 public:
310 // Initialization/Testing
311 static void initialize_initial_stubs(); // must happen before universe::genesis
312 static void initialize_continuation_stubs(); // must happen after universe::genesis
313 static void initialize_compiler_stubs(); // must happen after universe::genesis
314 static void initialize_final_stubs(); // must happen after universe::genesis
315
316 static bool is_stub_code(address addr) { return contains(addr); }
317
318 static bool contains(address addr) {
528
529 static address select_fill_function(BasicType t, bool aligned, const char* &name);
530
531 //
532 // Default versions of the above arraycopy functions for platforms which do
533 // not have specialized versions
534 //
535 static void jbyte_copy (jbyte* src, jbyte* dest, size_t count);
536 static void jshort_copy (jshort* src, jshort* dest, size_t count);
537 static void jint_copy (jint* src, jint* dest, size_t count);
538 static void jlong_copy (jlong* src, jlong* dest, size_t count);
539 static void oop_copy (oop* src, oop* dest, size_t count);
540 static void oop_copy_uninit(oop* src, oop* dest, size_t count);
541
542 static void arrayof_jbyte_copy (HeapWord* src, HeapWord* dest, size_t count);
543 static void arrayof_jshort_copy (HeapWord* src, HeapWord* dest, size_t count);
544 static void arrayof_jint_copy (HeapWord* src, HeapWord* dest, size_t count);
545 static void arrayof_jlong_copy (HeapWord* src, HeapWord* dest, size_t count);
546 static void arrayof_oop_copy (HeapWord* src, HeapWord* dest, size_t count);
547 static void arrayof_oop_copy_uninit(HeapWord* src, HeapWord* dest, size_t count);
548
549 static address load_inline_type_fields_in_regs() { return _load_inline_type_fields_in_regs; }
550 static address store_inline_type_fields_to_buf() { return _store_inline_type_fields_to_buf; }
551 };
552
553 #endif // SHARE_RUNTIME_STUBROUTINES_HPP
|