comparison src/share/vm/graal/graalRuntime.cpp @ 20839:b1700db197c7

Move com.oracle.nfi implementation to graal.truffle.hotspot since it implements an interface that does not live in the graal class-loader
author Gilles Duboscq <gilles.m.duboscq@oracle.com>
date Thu, 09 Apr 2015 17:40:55 +0200
parents 7366593c0610
children 23433619a7cd
comparison
equal deleted inserted replaced
20838:762e03b40d3d 20839:b1700db197c7
650 return JNIHandles::make_local((oop) result.get_jobject()); 650 return JNIHandles::make_local((oop) result.get_jobject());
651 JVM_END 651 JVM_END
652 652
653 // private static NativeFunctionInterfaceRuntime.createInterface() 653 // private static NativeFunctionInterfaceRuntime.createInterface()
654 JVM_ENTRY(jobject, JVM_CreateNativeFunctionInterface(JNIEnv *env, jclass c)) 654 JVM_ENTRY(jobject, JVM_CreateNativeFunctionInterface(JNIEnv *env, jclass c))
655 const char* backendName = NULL;
656 #ifdef TARGET_ARCH_x86
657 #ifdef _LP64
658 backendName = "com/oracle/graal/hotspot/amd64/AMD64HotSpotBackend";
659 #endif
660 #endif
661
662 if (backendName == NULL) {
663 return NULL;
664 }
665 GraalRuntime::ensure_graal_class_loader_is_initialized(); 655 GraalRuntime::ensure_graal_class_loader_is_initialized();
666 TempNewSymbol name = SymbolTable::new_symbol(backendName, CHECK_NULL); 656 TempNewSymbol name = SymbolTable::new_symbol("com/oracle/graal/truffle/hotspot/HotSpotTruffleRuntime", CHECK_NULL);
667 KlassHandle klass = GraalRuntime::resolve_or_fail(name, CHECK_NULL); 657 KlassHandle klass = GraalRuntime::resolve_or_fail(name, CHECK_NULL);
668 658
669 TempNewSymbol makeInstance = SymbolTable::new_symbol("createNativeFunctionInterface", CHECK_NULL); 659 TempNewSymbol makeInstance = SymbolTable::new_symbol("createNativeFunctionInterface", CHECK_NULL);
670 TempNewSymbol sig = SymbolTable::new_symbol("()Lcom/oracle/nfi/api/NativeFunctionInterface;", CHECK_NULL); 660 TempNewSymbol sig = SymbolTable::new_symbol("()Lcom/oracle/nfi/api/NativeFunctionInterface;", CHECK_NULL);
671 JavaValue result(T_OBJECT); 661 JavaValue result(T_OBJECT);