< prev index next >

src/jdk.internal.vm.compiler/share/classes/org.graalvm.compiler.hotspot/src/org/graalvm/compiler/hotspot/GraalHotSpotVMConfig.java

Print this page
rev 52509 : [mq]: graal


 635     public final long jshortAlignedArraycopy = getFieldValue("StubRoutines::_arrayof_jshort_arraycopy", Long.class, "address");
 636     public final long jintAlignedArraycopy = getFieldValue("StubRoutines::_arrayof_jint_arraycopy", Long.class, "address");
 637     public final long jlongAlignedArraycopy = getFieldValue("StubRoutines::_arrayof_jlong_arraycopy", Long.class, "address");
 638     public final long oopAlignedArraycopy = getFieldValue("StubRoutines::_arrayof_oop_arraycopy", Long.class, "address");
 639     public final long oopAlignedArraycopyUninit = getFieldValue("StubRoutines::_arrayof_oop_arraycopy_uninit", Long.class, "address");
 640     public final long jbyteAlignedDisjointArraycopy = getFieldValue("StubRoutines::_arrayof_jbyte_disjoint_arraycopy", Long.class, "address");
 641     public final long jshortAlignedDisjointArraycopy = getFieldValue("StubRoutines::_arrayof_jshort_disjoint_arraycopy", Long.class, "address");
 642     public final long jintAlignedDisjointArraycopy = getFieldValue("StubRoutines::_arrayof_jint_disjoint_arraycopy", Long.class, "address");
 643     public final long jlongAlignedDisjointArraycopy = getFieldValue("StubRoutines::_arrayof_jlong_disjoint_arraycopy", Long.class, "address");
 644     public final long oopAlignedDisjointArraycopy = getFieldValue("StubRoutines::_arrayof_oop_disjoint_arraycopy", Long.class, "address");
 645     public final long oopAlignedDisjointArraycopyUninit = getFieldValue("StubRoutines::_arrayof_oop_disjoint_arraycopy_uninit", Long.class, "address");
 646     public final long checkcastArraycopy = getFieldValue("StubRoutines::_checkcast_arraycopy", Long.class, "address");
 647     public final long checkcastArraycopyUninit = getFieldValue("StubRoutines::_checkcast_arraycopy_uninit", Long.class, "address");
 648     public final long unsafeArraycopy = getFieldValue("StubRoutines::_unsafe_arraycopy", Long.class, "address");
 649     public final long genericArraycopy = getFieldValue("StubRoutines::_generic_arraycopy", Long.class, "address");
 650 
 651     // Allocation stubs that throw an exception when allocation fails
 652     public final long newInstanceAddress = getAddress("JVMCIRuntime::new_instance");
 653     public final long newArrayAddress = getAddress("JVMCIRuntime::new_array");
 654     public final long newMultiArrayAddress = getAddress("JVMCIRuntime::new_multi_array");

 655 
 656     // Allocation stubs that return null when allocation fails
 657     public final long newInstanceOrNullAddress = getAddress("JVMCIRuntime::new_instance_or_null", 0L);
 658     public final long newArrayOrNullAddress = getAddress("JVMCIRuntime::new_array_or_null", 0L);
 659     public final long newMultiArrayOrNullAddress = getAddress("JVMCIRuntime::new_multi_array_or_null", 0L);

 660 
 661     public boolean areNullAllocationStubsAvailable() {
 662         return newInstanceOrNullAddress != 0L;
 663     }
 664 
 665     /**
 666      * Checks that HotSpot implements all or none of the allocate-or-null stubs.
 667      */
 668     private boolean checkNullAllocationStubs() {
 669         if (newInstanceOrNullAddress == 0L) {
 670             assert newArrayOrNullAddress == 0L;
 671             assert newMultiArrayOrNullAddress == 0L;

 672         } else {
 673             assert newArrayOrNullAddress != 0L;
 674             assert newMultiArrayOrNullAddress != 0L;

 675         }
 676         return true;
 677     }
 678 
 679     public final long threadIsInterruptedAddress = getAddress("JVMCIRuntime::thread_is_interrupted");
 680     public final long vmMessageAddress = getAddress("JVMCIRuntime::vm_message");
 681     public final long identityHashCodeAddress = getAddress("JVMCIRuntime::identity_hash_code");
 682     public final long exceptionHandlerForPcAddress = getAddress("JVMCIRuntime::exception_handler_for_pc");
 683     public final long monitorenterAddress = getAddress("JVMCIRuntime::monitorenter");
 684     public final long monitorexitAddress = getAddress("JVMCIRuntime::monitorexit");
 685     public final long notifyAddress = getAddress("JVMCIRuntime::object_notify", 0L);
 686     public final long notifyAllAddress = getAddress("JVMCIRuntime::object_notifyAll", 0L);
 687     public final long throwAndPostJvmtiExceptionAddress = getAddress("JVMCIRuntime::throw_and_post_jvmti_exception");
 688     public final long throwKlassExternalNameExceptionAddress = getAddress("JVMCIRuntime::throw_klass_external_name_exception");
 689     public final long throwClassCastExceptionAddress = getAddress("JVMCIRuntime::throw_class_cast_exception");
 690     public final long logPrimitiveAddress = getAddress("JVMCIRuntime::log_primitive");
 691     public final long logObjectAddress = getAddress("JVMCIRuntime::log_object");
 692     public final long logPrintfAddress = getAddress("JVMCIRuntime::log_printf");
 693     public final long vmErrorAddress = getAddress("JVMCIRuntime::vm_error");
 694     public final long loadAndClearExceptionAddress = getAddress("JVMCIRuntime::load_and_clear_exception");




 635     public final long jshortAlignedArraycopy = getFieldValue("StubRoutines::_arrayof_jshort_arraycopy", Long.class, "address");
 636     public final long jintAlignedArraycopy = getFieldValue("StubRoutines::_arrayof_jint_arraycopy", Long.class, "address");
 637     public final long jlongAlignedArraycopy = getFieldValue("StubRoutines::_arrayof_jlong_arraycopy", Long.class, "address");
 638     public final long oopAlignedArraycopy = getFieldValue("StubRoutines::_arrayof_oop_arraycopy", Long.class, "address");
 639     public final long oopAlignedArraycopyUninit = getFieldValue("StubRoutines::_arrayof_oop_arraycopy_uninit", Long.class, "address");
 640     public final long jbyteAlignedDisjointArraycopy = getFieldValue("StubRoutines::_arrayof_jbyte_disjoint_arraycopy", Long.class, "address");
 641     public final long jshortAlignedDisjointArraycopy = getFieldValue("StubRoutines::_arrayof_jshort_disjoint_arraycopy", Long.class, "address");
 642     public final long jintAlignedDisjointArraycopy = getFieldValue("StubRoutines::_arrayof_jint_disjoint_arraycopy", Long.class, "address");
 643     public final long jlongAlignedDisjointArraycopy = getFieldValue("StubRoutines::_arrayof_jlong_disjoint_arraycopy", Long.class, "address");
 644     public final long oopAlignedDisjointArraycopy = getFieldValue("StubRoutines::_arrayof_oop_disjoint_arraycopy", Long.class, "address");
 645     public final long oopAlignedDisjointArraycopyUninit = getFieldValue("StubRoutines::_arrayof_oop_disjoint_arraycopy_uninit", Long.class, "address");
 646     public final long checkcastArraycopy = getFieldValue("StubRoutines::_checkcast_arraycopy", Long.class, "address");
 647     public final long checkcastArraycopyUninit = getFieldValue("StubRoutines::_checkcast_arraycopy_uninit", Long.class, "address");
 648     public final long unsafeArraycopy = getFieldValue("StubRoutines::_unsafe_arraycopy", Long.class, "address");
 649     public final long genericArraycopy = getFieldValue("StubRoutines::_generic_arraycopy", Long.class, "address");
 650 
 651     // Allocation stubs that throw an exception when allocation fails
 652     public final long newInstanceAddress = getAddress("JVMCIRuntime::new_instance");
 653     public final long newArrayAddress = getAddress("JVMCIRuntime::new_array");
 654     public final long newMultiArrayAddress = getAddress("JVMCIRuntime::new_multi_array");
 655     public final long dynamicNewInstanceAddress = getAddress("JVMCIRuntime::dynamic_new_instance");
 656 
 657     // Allocation stubs that return null when allocation fails
 658     public final long newInstanceOrNullAddress = getAddress("JVMCIRuntime::new_instance_or_null", 0L);
 659     public final long newArrayOrNullAddress = getAddress("JVMCIRuntime::new_array_or_null", 0L);
 660     public final long newMultiArrayOrNullAddress = getAddress("JVMCIRuntime::new_multi_array_or_null", 0L);
 661     public final long dynamicNewInstanceOrNullAddress = getAddress("JVMCIRuntime::dynamic_new_instance_or_null", 0L);
 662 
 663     public boolean areNullAllocationStubsAvailable() {
 664         return newInstanceOrNullAddress != 0L;
 665     }
 666 
 667     /**
 668      * Checks that HotSpot implements all or none of the allocate-or-null stubs.
 669      */
 670     private boolean checkNullAllocationStubs() {
 671         if (newInstanceOrNullAddress == 0L) {
 672             assert newArrayOrNullAddress == 0L;
 673             assert newMultiArrayOrNullAddress == 0L;
 674             assert dynamicNewInstanceOrNullAddress == 0L;
 675         } else {
 676             assert newArrayOrNullAddress != 0L;
 677             assert newMultiArrayOrNullAddress != 0L;
 678             assert dynamicNewInstanceOrNullAddress != 0L;
 679         }
 680         return true;
 681     }
 682 
 683     public final long threadIsInterruptedAddress = getAddress("JVMCIRuntime::thread_is_interrupted");
 684     public final long vmMessageAddress = getAddress("JVMCIRuntime::vm_message");
 685     public final long identityHashCodeAddress = getAddress("JVMCIRuntime::identity_hash_code");
 686     public final long exceptionHandlerForPcAddress = getAddress("JVMCIRuntime::exception_handler_for_pc");
 687     public final long monitorenterAddress = getAddress("JVMCIRuntime::monitorenter");
 688     public final long monitorexitAddress = getAddress("JVMCIRuntime::monitorexit");
 689     public final long notifyAddress = getAddress("JVMCIRuntime::object_notify", 0L);
 690     public final long notifyAllAddress = getAddress("JVMCIRuntime::object_notifyAll", 0L);
 691     public final long throwAndPostJvmtiExceptionAddress = getAddress("JVMCIRuntime::throw_and_post_jvmti_exception");
 692     public final long throwKlassExternalNameExceptionAddress = getAddress("JVMCIRuntime::throw_klass_external_name_exception");
 693     public final long throwClassCastExceptionAddress = getAddress("JVMCIRuntime::throw_class_cast_exception");
 694     public final long logPrimitiveAddress = getAddress("JVMCIRuntime::log_primitive");
 695     public final long logObjectAddress = getAddress("JVMCIRuntime::log_object");
 696     public final long logPrintfAddress = getAddress("JVMCIRuntime::log_printf");
 697     public final long vmErrorAddress = getAddress("JVMCIRuntime::vm_error");
 698     public final long loadAndClearExceptionAddress = getAddress("JVMCIRuntime::load_and_clear_exception");


< prev index next >