src/cpu/sparc/vm/c1_Runtime1_sparc.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File 7083786 Sdiff src/cpu/sparc/vm

src/cpu/sparc/vm/c1_Runtime1_sparc.cpp

Print this page




 765         restore_live_registers(sasm, save_fpu_registers);
 766 
 767         __ ret();
 768         __ delayed()->restore();
 769 
 770       }
 771       break;
 772 
 773     case access_field_patching_id:
 774       { __ set_info("access_field_patching", dont_gc_arguments);
 775         oop_maps = generate_patching(sasm, CAST_FROM_FN_PTR(address, access_field_patching));
 776       }
 777       break;
 778 
 779     case load_klass_patching_id:
 780       { __ set_info("load_klass_patching", dont_gc_arguments);
 781         oop_maps = generate_patching(sasm, CAST_FROM_FN_PTR(address, move_klass_patching));
 782       }
 783       break;
 784 
 785     case jvmti_exception_throw_id:
 786       { // Oexception : exception
 787         __ set_info("jvmti_exception_throw", dont_gc_arguments);
 788         oop_maps = generate_stub_call(sasm, noreg, CAST_FROM_FN_PTR(address, Runtime1::post_jvmti_exception_throw), I0);
 789       }
 790       break;
 791 
 792     case dtrace_object_alloc_id:
 793       { // O0: object
 794         __ set_info("dtrace_object_alloc", dont_gc_arguments);
 795         // we can't gc here so skip the oopmap but make sure that all
 796         // the live registers get saved.
 797         save_live_registers(sasm);
 798 
 799         __ save_thread(L7_thread_cache);
 800         __ call(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_object_alloc),
 801                 relocInfo::runtime_call_type);
 802         __ delayed()->mov(I0, O0);
 803         __ restore_thread(L7_thread_cache);
 804 
 805         restore_live_registers(sasm);
 806         __ ret();
 807         __ delayed()->restore();
 808       }
 809       break;
 810 
 811 #ifndef SERIALGC




 765         restore_live_registers(sasm, save_fpu_registers);
 766 
 767         __ ret();
 768         __ delayed()->restore();
 769 
 770       }
 771       break;
 772 
 773     case access_field_patching_id:
 774       { __ set_info("access_field_patching", dont_gc_arguments);
 775         oop_maps = generate_patching(sasm, CAST_FROM_FN_PTR(address, access_field_patching));
 776       }
 777       break;
 778 
 779     case load_klass_patching_id:
 780       { __ set_info("load_klass_patching", dont_gc_arguments);
 781         oop_maps = generate_patching(sasm, CAST_FROM_FN_PTR(address, move_klass_patching));
 782       }
 783       break;
 784 







 785     case dtrace_object_alloc_id:
 786       { // O0: object
 787         __ set_info("dtrace_object_alloc", dont_gc_arguments);
 788         // we can't gc here so skip the oopmap but make sure that all
 789         // the live registers get saved.
 790         save_live_registers(sasm);
 791 
 792         __ save_thread(L7_thread_cache);
 793         __ call(CAST_FROM_FN_PTR(address, SharedRuntime::dtrace_object_alloc),
 794                 relocInfo::runtime_call_type);
 795         __ delayed()->mov(I0, O0);
 796         __ restore_thread(L7_thread_cache);
 797 
 798         restore_live_registers(sasm);
 799         __ ret();
 800         __ delayed()->restore();
 801       }
 802       break;
 803 
 804 #ifndef SERIALGC


src/cpu/sparc/vm/c1_Runtime1_sparc.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File