253 static address _dlibm_sin_cos_huge;
254 static address _dlibm_reduce_pi04l;
255 static address _dlibm_tan_cot_huge;
256 static address _dtan;
257 static address _fmod;
258
259 static address _f2hf;
260 static address _hf2f;
261
262 static address _method_entry_barrier;
263
264 static address _cont_thaw;
265 static address _cont_returnBarrier;
266 static address _cont_returnBarrierExc;
267
268 JFR_ONLY(static RuntimeStub* _jfr_write_checkpoint_stub;)
269 JFR_ONLY(static address _jfr_write_checkpoint;)
270 JFR_ONLY(static RuntimeStub* _jfr_return_lease_stub;)
271 JFR_ONLY(static address _jfr_return_lease;)
272
273 // Vector Math Routines
274 static address _vector_f_math[VectorSupport::NUM_VEC_SIZES][VectorSupport::NUM_SVML_OP];
275 static address _vector_d_math[VectorSupport::NUM_VEC_SIZES][VectorSupport::NUM_SVML_OP];
276
277 static address _upcall_stub_exception_handler;
278
279 static address _lookup_secondary_supers_table_stubs[];
280 static address _lookup_secondary_supers_table_slow_path_stub;
281
282 public:
283 // Initialization/Testing
284 static void initialize_initial_stubs(); // must happen before universe::genesis
285 static void initialize_continuation_stubs(); // must happen after universe::genesis
286 static void initialize_compiler_stubs(); // must happen after universe::genesis
287 static void initialize_final_stubs(); // must happen after universe::genesis
288
289 static bool is_stub_code(address addr) { return contains(addr); }
290
291 static bool contains(address addr) {
292 return
502
503 static address select_fill_function(BasicType t, bool aligned, const char* &name);
504
505 //
506 // Default versions of the above arraycopy functions for platforms which do
507 // not have specialized versions
508 //
509 static void jbyte_copy (jbyte* src, jbyte* dest, size_t count);
510 static void jshort_copy (jshort* src, jshort* dest, size_t count);
511 static void jint_copy (jint* src, jint* dest, size_t count);
512 static void jlong_copy (jlong* src, jlong* dest, size_t count);
513 static void oop_copy (oop* src, oop* dest, size_t count);
514 static void oop_copy_uninit(oop* src, oop* dest, size_t count);
515
516 static void arrayof_jbyte_copy (HeapWord* src, HeapWord* dest, size_t count);
517 static void arrayof_jshort_copy (HeapWord* src, HeapWord* dest, size_t count);
518 static void arrayof_jint_copy (HeapWord* src, HeapWord* dest, size_t count);
519 static void arrayof_jlong_copy (HeapWord* src, HeapWord* dest, size_t count);
520 static void arrayof_oop_copy (HeapWord* src, HeapWord* dest, size_t count);
521 static void arrayof_oop_copy_uninit(HeapWord* src, HeapWord* dest, size_t count);
522 };
523
524 #endif // SHARE_RUNTIME_STUBROUTINES_HPP
|
253 static address _dlibm_sin_cos_huge;
254 static address _dlibm_reduce_pi04l;
255 static address _dlibm_tan_cot_huge;
256 static address _dtan;
257 static address _fmod;
258
259 static address _f2hf;
260 static address _hf2f;
261
262 static address _method_entry_barrier;
263
264 static address _cont_thaw;
265 static address _cont_returnBarrier;
266 static address _cont_returnBarrierExc;
267
268 JFR_ONLY(static RuntimeStub* _jfr_write_checkpoint_stub;)
269 JFR_ONLY(static address _jfr_write_checkpoint;)
270 JFR_ONLY(static RuntimeStub* _jfr_return_lease_stub;)
271 JFR_ONLY(static address _jfr_return_lease;)
272
273 static address _load_inline_type_fields_in_regs;
274 static address _store_inline_type_fields_to_buf;
275
276 // Vector Math Routines
277 static address _vector_f_math[VectorSupport::NUM_VEC_SIZES][VectorSupport::NUM_SVML_OP];
278 static address _vector_d_math[VectorSupport::NUM_VEC_SIZES][VectorSupport::NUM_SVML_OP];
279
280 static address _upcall_stub_exception_handler;
281
282 static address _lookup_secondary_supers_table_stubs[];
283 static address _lookup_secondary_supers_table_slow_path_stub;
284
285 public:
286 // Initialization/Testing
287 static void initialize_initial_stubs(); // must happen before universe::genesis
288 static void initialize_continuation_stubs(); // must happen after universe::genesis
289 static void initialize_compiler_stubs(); // must happen after universe::genesis
290 static void initialize_final_stubs(); // must happen after universe::genesis
291
292 static bool is_stub_code(address addr) { return contains(addr); }
293
294 static bool contains(address addr) {
295 return
505
506 static address select_fill_function(BasicType t, bool aligned, const char* &name);
507
508 //
509 // Default versions of the above arraycopy functions for platforms which do
510 // not have specialized versions
511 //
512 static void jbyte_copy (jbyte* src, jbyte* dest, size_t count);
513 static void jshort_copy (jshort* src, jshort* dest, size_t count);
514 static void jint_copy (jint* src, jint* dest, size_t count);
515 static void jlong_copy (jlong* src, jlong* dest, size_t count);
516 static void oop_copy (oop* src, oop* dest, size_t count);
517 static void oop_copy_uninit(oop* src, oop* dest, size_t count);
518
519 static void arrayof_jbyte_copy (HeapWord* src, HeapWord* dest, size_t count);
520 static void arrayof_jshort_copy (HeapWord* src, HeapWord* dest, size_t count);
521 static void arrayof_jint_copy (HeapWord* src, HeapWord* dest, size_t count);
522 static void arrayof_jlong_copy (HeapWord* src, HeapWord* dest, size_t count);
523 static void arrayof_oop_copy (HeapWord* src, HeapWord* dest, size_t count);
524 static void arrayof_oop_copy_uninit(HeapWord* src, HeapWord* dest, size_t count);
525
526 static address load_inline_type_fields_in_regs() { return _load_inline_type_fields_in_regs; }
527 static address store_inline_type_fields_to_buf() { return _store_inline_type_fields_to_buf; }
528 };
529
530 #endif // SHARE_RUNTIME_STUBROUTINES_HPP
|