Mercurial > hg > truffle
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); |