src/cpu/x86/vm/sharedRuntime_x86_32.cpp

changeset 2950
cba7b5c2d53f
parent 2895
167b70ff3abc
child 3130
5432047c7db7
     1.1 --- a/src/cpu/x86/vm/sharedRuntime_x86_32.cpp	Thu Jun 02 13:36:11 2011 -0700
     1.2 +++ b/src/cpu/x86/vm/sharedRuntime_x86_32.cpp	Fri Jun 03 22:31:43 2011 -0700
     1.3 @@ -42,18 +42,6 @@
     1.4  #endif
     1.5  
     1.6  #define __ masm->
     1.7 -#ifdef COMPILER2
     1.8 -UncommonTrapBlob   *SharedRuntime::_uncommon_trap_blob;
     1.9 -#endif // COMPILER2
    1.10 -
    1.11 -DeoptimizationBlob *SharedRuntime::_deopt_blob;
    1.12 -SafepointBlob      *SharedRuntime::_polling_page_safepoint_handler_blob;
    1.13 -SafepointBlob      *SharedRuntime::_polling_page_return_handler_blob;
    1.14 -RuntimeStub*       SharedRuntime::_wrong_method_blob;
    1.15 -RuntimeStub*       SharedRuntime::_ic_miss_blob;
    1.16 -RuntimeStub*       SharedRuntime::_resolve_opt_virtual_call_blob;
    1.17 -RuntimeStub*       SharedRuntime::_resolve_virtual_call_blob;
    1.18 -RuntimeStub*       SharedRuntime::_resolve_static_call_blob;
    1.19  
    1.20  const int StackAlignmentInSlots = StackAlignmentInBytes / VMRegImpl::stack_slot_size;
    1.21  
    1.22 @@ -2253,31 +2241,6 @@
    1.23    return 0;
    1.24  }
    1.25  
    1.26 -//----------------------------generate_ricochet_blob---------------------------
    1.27 -void SharedRuntime::generate_ricochet_blob() {
    1.28 -  if (!EnableInvokeDynamic)  return;  // leave it as a null
    1.29 -
    1.30 -  // allocate space for the code
    1.31 -  ResourceMark rm;
    1.32 -  // setup code generation tools
    1.33 -  CodeBuffer   buffer("ricochet_blob", 256, 256);
    1.34 -  MacroAssembler* masm = new MacroAssembler(&buffer);
    1.35 -
    1.36 -  int frame_size_in_words = -1, bounce_offset = -1, exception_offset = -1;
    1.37 -  MethodHandles::RicochetFrame::generate_ricochet_blob(masm, &frame_size_in_words, &bounce_offset, &exception_offset);
    1.38 -
    1.39 -  // -------------
    1.40 -  // make sure all code is generated
    1.41 -  masm->flush();
    1.42 -
    1.43 -  // failed to generate?
    1.44 -  if (frame_size_in_words < 0 || bounce_offset < 0 || exception_offset < 0) {
    1.45 -    assert(false, "bad ricochet blob");
    1.46 -    return;
    1.47 -  }
    1.48 -
    1.49 -  _ricochet_blob = RicochetBlob::create(&buffer, bounce_offset, exception_offset, frame_size_in_words);
    1.50 -}
    1.51  
    1.52  //------------------------------generate_deopt_blob----------------------------
    1.53  void SharedRuntime::generate_deopt_blob() {
    1.54 @@ -2816,7 +2779,7 @@
    1.55  // setup oopmap, and calls safepoint code to stop the compiled code for
    1.56  // a safepoint.
    1.57  //
    1.58 -static SafepointBlob* generate_handler_blob(address call_ptr, bool cause_return) {
    1.59 +SafepointBlob* SharedRuntime::generate_handler_blob(address call_ptr, bool cause_return) {
    1.60  
    1.61    // Account for thread arg in our frame
    1.62    const int additional_words = 1;
    1.63 @@ -2913,7 +2876,7 @@
    1.64  // but since this is generic code we don't know what they are and the caller
    1.65  // must do any gc of the args.
    1.66  //
    1.67 -static RuntimeStub* generate_resolve_blob(address destination, const char* name) {
    1.68 +RuntimeStub* SharedRuntime::generate_resolve_blob(address destination, const char* name) {
    1.69    assert (StubRoutines::forward_exception_entry() != NULL, "must be generated before");
    1.70  
    1.71    // allocate space for the code
    1.72 @@ -2995,36 +2958,3 @@
    1.73    // frame_size_words or bytes??
    1.74    return RuntimeStub::new_runtime_stub(name, &buffer, frame_complete, frame_size_words, oop_maps, true);
    1.75  }
    1.76 -
    1.77 -void SharedRuntime::generate_stubs() {
    1.78 -
    1.79 -  _wrong_method_blob = generate_resolve_blob(CAST_FROM_FN_PTR(address, SharedRuntime::handle_wrong_method),
    1.80 -                                        "wrong_method_stub");
    1.81 -
    1.82 -  _ic_miss_blob      = generate_resolve_blob(CAST_FROM_FN_PTR(address, SharedRuntime::handle_wrong_method_ic_miss),
    1.83 -                                        "ic_miss_stub");
    1.84 -
    1.85 -  _resolve_opt_virtual_call_blob = generate_resolve_blob(CAST_FROM_FN_PTR(address, SharedRuntime::resolve_opt_virtual_call_C),
    1.86 -                                        "resolve_opt_virtual_call");
    1.87 -
    1.88 -  _resolve_virtual_call_blob = generate_resolve_blob(CAST_FROM_FN_PTR(address, SharedRuntime::resolve_virtual_call_C),
    1.89 -                                        "resolve_virtual_call");
    1.90 -
    1.91 -  _resolve_static_call_blob = generate_resolve_blob(CAST_FROM_FN_PTR(address, SharedRuntime::resolve_static_call_C),
    1.92 -                                        "resolve_static_call");
    1.93 -
    1.94 -  _polling_page_safepoint_handler_blob =
    1.95 -    generate_handler_blob(CAST_FROM_FN_PTR(address,
    1.96 -                   SafepointSynchronize::handle_polling_page_exception), false);
    1.97 -
    1.98 -  _polling_page_return_handler_blob =
    1.99 -    generate_handler_blob(CAST_FROM_FN_PTR(address,
   1.100 -                   SafepointSynchronize::handle_polling_page_exception), true);
   1.101 -
   1.102 -  generate_ricochet_blob();
   1.103 -
   1.104 -  generate_deopt_blob();
   1.105 -#ifdef COMPILER2
   1.106 -  generate_uncommon_trap_blob();
   1.107 -#endif // COMPILER2
   1.108 -}

mercurial