Mercurial > hg > truffle
comparison src/share/vm/graal/graalCompilerToVM.cpp @ 5062:5e9f38419819
Adjust C++ part according to the renaming.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Thu, 08 Mar 2012 19:24:41 +0100 |
parents | 5e6f1026a63e |
children | dad1ac9dba7d 51111665eda6 |
comparison
equal
deleted
inserted
replaced
5061:e808627bd16f | 5062:5e9f38419819 |
---|---|
47 methodDataOop getMethodDataFromHotSpotMethodData(jobject hotspot_method_data) { | 47 methodDataOop getMethodDataFromHotSpotMethodData(jobject hotspot_method_data) { |
48 return (methodDataOop)HotSpotMethodData::hotspotMirror(JNIHandles::resolve(hotspot_method_data)); | 48 return (methodDataOop)HotSpotMethodData::hotspotMirror(JNIHandles::resolve(hotspot_method_data)); |
49 } | 49 } |
50 | 50 |
51 // public byte[] RiMethod_code(HotSpotResolvedMethod method); | 51 // public byte[] RiMethod_code(HotSpotResolvedMethod method); |
52 JNIEXPORT jbyteArray JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1code(JNIEnv *env, jobject, jobject hotspot_method) { | 52 JNIEXPORT jbyteArray JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1code(JNIEnv *env, jobject, jobject hotspot_method) { |
53 TRACE_graal_3("CompilerToVM::RiMethod_code"); | 53 TRACE_graal_3("CompilerToVM::RiMethod_code"); |
54 methodHandle method = getMethodFromHotSpotMethod(hotspot_method); | 54 methodHandle method = getMethodFromHotSpotMethod(hotspot_method); |
55 int code_size = method->code_size(); | 55 int code_size = method->code_size(); |
56 jbyteArray result = env->NewByteArray(code_size); | 56 jbyteArray result = env->NewByteArray(code_size); |
57 env->SetByteArrayRegion(result, 0, code_size, (const jbyte *) method->code_base()); | 57 env->SetByteArrayRegion(result, 0, code_size, (const jbyte *) method->code_base()); |
58 return result; | 58 return result; |
59 } | 59 } |
60 | 60 |
61 // public String RiMethod_signature(HotSpotResolvedMethod method); | 61 // public String RiMethod_signature(HotSpotResolvedMethod method); |
62 JNIEXPORT jstring JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1signature(JNIEnv *env, jobject, jobject hotspot_method) { | 62 JNIEXPORT jstring JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1signature(JNIEnv *env, jobject, jobject hotspot_method) { |
63 TRACE_graal_3("CompilerToVM::RiMethod_signature"); | 63 TRACE_graal_3("CompilerToVM::RiMethod_signature"); |
64 VM_ENTRY_MARK | 64 VM_ENTRY_MARK |
65 methodOop method = getMethodFromHotSpotMethod(hotspot_method); | 65 methodOop method = getMethodFromHotSpotMethod(hotspot_method); |
66 assert(method != NULL && method->signature() != NULL, "signature required"); | 66 assert(method != NULL && method->signature() != NULL, "signature required"); |
67 return VmIds::toString<jstring>(method->signature(), THREAD); | 67 return VmIds::toString<jstring>(method->signature(), THREAD); |
68 } | 68 } |
69 | 69 |
70 // public RiExceptionHandler[] RiMethod_exceptionHandlers(long vmId); | 70 // public RiExceptionHandler[] RiMethod_exceptionHandlers(long vmId); |
71 JNIEXPORT jobjectArray JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1exceptionHandlers(JNIEnv *, jobject, jobject hotspot_method) { | 71 JNIEXPORT jobjectArray JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1exceptionHandlers(JNIEnv *, jobject, jobject hotspot_method) { |
72 TRACE_graal_3("CompilerToVM::RiMethod_exceptionHandlers"); | 72 TRACE_graal_3("CompilerToVM::RiMethod_exceptionHandlers"); |
73 VM_ENTRY_MARK | 73 VM_ENTRY_MARK |
74 ResourceMark rm; | 74 ResourceMark rm; |
75 methodHandle method = getMethodFromHotSpotMethod(hotspot_method); | 75 methodHandle method = getMethodFromHotSpotMethod(hotspot_method); |
76 typeArrayHandle handlers = method->exception_table(); | 76 typeArrayHandle handlers = method->exception_table(); |
107 | 107 |
108 return (jobjectArray) JNIHandles::make_local(array()); | 108 return (jobjectArray) JNIHandles::make_local(array()); |
109 } | 109 } |
110 | 110 |
111 // public boolean RiMethod_hasBalancedMonitors(long vmId); | 111 // public boolean RiMethod_hasBalancedMonitors(long vmId); |
112 JNIEXPORT jint JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1hasBalancedMonitors(JNIEnv *, jobject, jobject hotspot_method) { | 112 JNIEXPORT jint JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1hasBalancedMonitors(JNIEnv *, jobject, jobject hotspot_method) { |
113 TRACE_graal_3("CompilerToVM::RiMethod_hasBalancedMonitors"); | 113 TRACE_graal_3("CompilerToVM::RiMethod_hasBalancedMonitors"); |
114 | 114 |
115 VM_ENTRY_MARK; | 115 VM_ENTRY_MARK; |
116 | 116 |
117 // Analyze the method to see if monitors are used properly. | 117 // Analyze the method to see if monitors are used properly. |
135 } | 135 } |
136 return true; | 136 return true; |
137 } | 137 } |
138 | 138 |
139 // public RiMethod getRiMethod(java.lang.reflect.Method reflectionMethod); | 139 // public RiMethod getRiMethod(java.lang.reflect.Method reflectionMethod); |
140 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_getRiMethod(JNIEnv *, jobject, jobject reflection_method_handle) { | 140 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_getRiMethod(JNIEnv *, jobject, jobject reflection_method_handle) { |
141 TRACE_graal_3("CompilerToVM::getRiMethod"); | 141 TRACE_graal_3("CompilerToVM::getRiMethod"); |
142 VM_ENTRY_MARK; | 142 VM_ENTRY_MARK; |
143 oop reflection_method = JNIHandles::resolve(reflection_method_handle); | 143 oop reflection_method = JNIHandles::resolve(reflection_method_handle); |
144 oop reflection_holder = java_lang_reflect_Method::clazz(reflection_method); | 144 oop reflection_holder = java_lang_reflect_Method::clazz(reflection_method); |
145 int slot = java_lang_reflect_Method::slot(reflection_method); | 145 int slot = java_lang_reflect_Method::slot(reflection_method); |
148 Handle ret = GraalCompiler::createHotSpotMethodResolved(method, CHECK_NULL); | 148 Handle ret = GraalCompiler::createHotSpotMethodResolved(method, CHECK_NULL); |
149 return JNIHandles::make_local(THREAD, ret()); | 149 return JNIHandles::make_local(THREAD, ret()); |
150 } | 150 } |
151 | 151 |
152 // public boolean RiMethod_uniqueConcreteMethod(long vmId); | 152 // public boolean RiMethod_uniqueConcreteMethod(long vmId); |
153 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1uniqueConcreteMethod(JNIEnv *, jobject, jobject hotspot_method) { | 153 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1uniqueConcreteMethod(JNIEnv *, jobject, jobject hotspot_method) { |
154 TRACE_graal_3("CompilerToVM::RiMethod_uniqueConcreteMethod"); | 154 TRACE_graal_3("CompilerToVM::RiMethod_uniqueConcreteMethod"); |
155 | 155 |
156 VM_ENTRY_MARK; | 156 VM_ENTRY_MARK; |
157 methodHandle method = getMethodFromHotSpotMethod(hotspot_method); | 157 methodHandle method = getMethodFromHotSpotMethod(hotspot_method); |
158 KlassHandle holder = method->method_holder(); | 158 KlassHandle holder = method->method_holder(); |
179 return JNIHandles::make_local(THREAD, method_resolved()); | 179 return JNIHandles::make_local(THREAD, method_resolved()); |
180 } | 180 } |
181 } | 181 } |
182 | 182 |
183 // public native int RiMethod_invocationCount(long vmId); | 183 // public native int RiMethod_invocationCount(long vmId); |
184 JNIEXPORT jint JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1invocationCount(JNIEnv *, jobject, jobject hotspot_method) { | 184 JNIEXPORT jint JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1invocationCount(JNIEnv *, jobject, jobject hotspot_method) { |
185 TRACE_graal_3("CompilerToVM::RiMethod_invocationCount"); | 185 TRACE_graal_3("CompilerToVM::RiMethod_invocationCount"); |
186 return getMethodFromHotSpotMethod(hotspot_method)->invocation_count(); | 186 return getMethodFromHotSpotMethod(hotspot_method)->invocation_count(); |
187 } | 187 } |
188 | 188 |
189 // public native HotSpotMethodData RiMethod_methodData(HotSpotMethodResolved method); | 189 // public native HotSpotMethodData RiMethod_methodData(HotSpotMethodResolved method); |
190 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1methodData(JNIEnv *, jobject, jobject hotspot_method) { | 190 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1methodData(JNIEnv *, jobject, jobject hotspot_method) { |
191 TRACE_graal_3("CompilerToVM::RiMethod_methodData"); | 191 TRACE_graal_3("CompilerToVM::RiMethod_methodData"); |
192 VM_ENTRY_MARK; | 192 VM_ENTRY_MARK; |
193 | 193 |
194 methodDataHandle method_data = getMethodFromHotSpotMethod(hotspot_method)->method_data(); | 194 methodDataHandle method_data = getMethodFromHotSpotMethod(hotspot_method)->method_data(); |
195 if(method_data.is_null()) { | 195 if(method_data.is_null()) { |
225 } | 225 } |
226 return count; | 226 return count; |
227 } | 227 } |
228 | 228 |
229 // public native boolean RiMethod_hasCompiledCode(HotSpotMethodResolved method); | 229 // public native boolean RiMethod_hasCompiledCode(HotSpotMethodResolved method); |
230 JNIEXPORT jboolean JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1hasCompiledCode(JNIEnv *, jobject, jobject hotspot_method) { | 230 JNIEXPORT jboolean JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1hasCompiledCode(JNIEnv *, jobject, jobject hotspot_method) { |
231 TRACE_graal_3("CompilerToVM::RiMethod_hasCompiledCode"); | 231 TRACE_graal_3("CompilerToVM::RiMethod_hasCompiledCode"); |
232 return getMethodFromHotSpotMethod(hotspot_method)->has_compiled_code(); | 232 return getMethodFromHotSpotMethod(hotspot_method)->has_compiled_code(); |
233 } | 233 } |
234 | 234 |
235 // public native int RiMethod_getCompiledCodeSize(HotSpotMethodResolved method); | 235 // public native int RiMethod_getCompiledCodeSize(HotSpotMethodResolved method); |
236 JNIEXPORT jint JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1getCompiledCodeSize(JNIEnv *env, jobject, jobject hotspot_method) { | 236 JNIEXPORT jint JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_1getCompiledCodeSize(JNIEnv *env, jobject, jobject hotspot_method) { |
237 TRACE_graal_3("CompilerToVM::RiMethod_getCompiledCodeSize"); | 237 TRACE_graal_3("CompilerToVM::RiMethod_getCompiledCodeSize"); |
238 nmethod* code = getMethodFromHotSpotMethod(hotspot_method)->code(); | 238 nmethod* code = getMethodFromHotSpotMethod(hotspot_method)->code(); |
239 return code == NULL ? 0 : code->insts_size(); | 239 return code == NULL ? 0 : code->insts_size(); |
240 } | 240 } |
241 | 241 |
242 // public RiType RiSignature_lookupType(String returnType, HotSpotTypeResolved accessingClass); | 242 // public RiType RiSignature_lookupType(String returnType, HotSpotTypeResolved accessingClass); |
243 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiSignature_1lookupType(JNIEnv *env, jobject, jstring jname, jobject accessingClass, jboolean eagerResolve) { | 243 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiSignature_1lookupType(JNIEnv *env, jobject, jstring jname, jobject accessingClass, jboolean eagerResolve) { |
244 TRACE_graal_3("CompilerToVM::RiSignature_lookupType"); | 244 TRACE_graal_3("CompilerToVM::RiSignature_lookupType"); |
245 VM_ENTRY_MARK; | 245 VM_ENTRY_MARK; |
246 ResourceMark rm; | 246 ResourceMark rm; |
247 | 247 |
248 Symbol* nameSymbol = VmIds::toSymbol(jname); | 248 Symbol* nameSymbol = VmIds::toSymbol(jname); |
304 | 304 |
305 return JNIHandles::make_local(THREAD, result); | 305 return JNIHandles::make_local(THREAD, result); |
306 } | 306 } |
307 | 307 |
308 // public Object RiConstantPool_lookupConstant(HotSpotTypeResolved type, int cpi); | 308 // public Object RiConstantPool_lookupConstant(HotSpotTypeResolved type, int cpi); |
309 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiConstantPool_1lookupConstant(JNIEnv *env, jobject, jobject type, jint index) { | 309 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiConstantPool_1lookupConstant(JNIEnv *env, jobject, jobject type, jint index) { |
310 TRACE_graal_3("CompilerToVM::RiConstantPool_lookupConstant"); | 310 TRACE_graal_3("CompilerToVM::RiConstantPool_lookupConstant"); |
311 VM_ENTRY_MARK; | 311 VM_ENTRY_MARK; |
312 | 312 |
313 constantPoolOop cp = instanceKlass::cast(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(type)))->constants(); | 313 constantPoolOop cp = instanceKlass::cast(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(type)))->constants(); |
314 | 314 |
349 | 349 |
350 return JNIHandles::make_local(THREAD, result); | 350 return JNIHandles::make_local(THREAD, result); |
351 } | 351 } |
352 | 352 |
353 // public RiMethod RiConstantPool_lookupMethod(long vmId, int cpi, byte byteCode); | 353 // public RiMethod RiConstantPool_lookupMethod(long vmId, int cpi, byte byteCode); |
354 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiConstantPool_1lookupMethod(JNIEnv *env, jobject, jobject type, jint index, jbyte byteCode) { | 354 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiConstantPool_1lookupMethod(JNIEnv *env, jobject, jobject type, jint index, jbyte byteCode) { |
355 TRACE_graal_3("CompilerToVM::RiConstantPool_lookupMethod"); | 355 TRACE_graal_3("CompilerToVM::RiConstantPool_lookupMethod"); |
356 VM_ENTRY_MARK; | 356 VM_ENTRY_MARK; |
357 index = GraalCompiler::to_cp_index_u2(index); | 357 index = GraalCompiler::to_cp_index_u2(index); |
358 constantPoolHandle cp = instanceKlass::cast(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(type)))->constants(); | 358 constantPoolHandle cp = instanceKlass::cast(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(type)))->constants(); |
359 instanceKlassHandle pool_holder(cp->pool_holder()); | 359 instanceKlassHandle pool_holder(cp->pool_holder()); |
372 return JNIHandles::make_local(THREAD, VMToCompiler::createRiMethodUnresolved(name, signature, type, THREAD)); | 372 return JNIHandles::make_local(THREAD, VMToCompiler::createRiMethodUnresolved(name, signature, type, THREAD)); |
373 } | 373 } |
374 } | 374 } |
375 | 375 |
376 // public RiType RiConstantPool_lookupType(long vmId, int cpi); | 376 // public RiType RiConstantPool_lookupType(long vmId, int cpi); |
377 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiConstantPool_1lookupType(JNIEnv *env, jobject, jobject type, jint index) { | 377 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiConstantPool_1lookupType(JNIEnv *env, jobject, jobject type, jint index) { |
378 TRACE_graal_3("CompilerToVM::RiConstantPool_lookupType"); | 378 TRACE_graal_3("CompilerToVM::RiConstantPool_lookupType"); |
379 VM_ENTRY_MARK; | 379 VM_ENTRY_MARK; |
380 | 380 |
381 constantPoolOop cp = instanceKlass::cast(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(type)))->constants(); | 381 constantPoolOop cp = instanceKlass::cast(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(type)))->constants(); |
382 Handle result = GraalCompiler::get_RiType(cp, index, cp->pool_holder(), CHECK_NULL); | 382 Handle result = GraalCompiler::get_RiType(cp, index, cp->pool_holder(), CHECK_NULL); |
383 return JNIHandles::make_local(THREAD, result()); | 383 return JNIHandles::make_local(THREAD, result()); |
384 } | 384 } |
385 | 385 |
386 // public void RiConstantPool_loadReferencedType(long vmId, int cpi); | 386 // public void RiConstantPool_loadReferencedType(long vmId, int cpi); |
387 JNIEXPORT void JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiConstantPool_1loadReferencedType(JNIEnv *env, jobject, jobject type, jint index, jbyte op) { | 387 JNIEXPORT void JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiConstantPool_1loadReferencedType(JNIEnv *env, jobject, jobject type, jint index, jbyte op) { |
388 TRACE_graal_3("CompilerToVM::RiConstantPool_loadReferencedType"); | 388 TRACE_graal_3("CompilerToVM::RiConstantPool_loadReferencedType"); |
389 VM_ENTRY_MARK; | 389 VM_ENTRY_MARK; |
390 | 390 |
391 constantPoolOop cp = instanceKlass::cast(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(type)))->constants(); | 391 constantPoolOop cp = instanceKlass::cast(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(type)))->constants(); |
392 int byteCode = (op & 0xFF); | 392 int byteCode = (op & 0xFF); |
408 } | 408 } |
409 } | 409 } |
410 } | 410 } |
411 | 411 |
412 // public RiField RiConstantPool_lookupField(long vmId, int cpi); | 412 // public RiField RiConstantPool_lookupField(long vmId, int cpi); |
413 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiConstantPool_1lookupField(JNIEnv *env, jobject, jobject constantPoolHolder, jint index, jbyte byteCode) { | 413 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiConstantPool_1lookupField(JNIEnv *env, jobject, jobject constantPoolHolder, jint index, jbyte byteCode) { |
414 TRACE_graal_3("CompilerToVM::RiConstantPool_lookupField"); | 414 TRACE_graal_3("CompilerToVM::RiConstantPool_lookupField"); |
415 VM_ENTRY_MARK; | 415 VM_ENTRY_MARK; |
416 ResourceMark rm; | 416 ResourceMark rm; |
417 | 417 |
418 index = GraalCompiler::to_cp_index_u2(index); | 418 index = GraalCompiler::to_cp_index_u2(index); |
517 } | 517 } |
518 return JNIHandles::make_local(THREAD, field_handle()); | 518 return JNIHandles::make_local(THREAD, field_handle()); |
519 } | 519 } |
520 | 520 |
521 // public RiMethod RiType_resolveMethodImpl(HotSpotTypeResolved klass, String name, String signature); | 521 // public RiMethod RiType_resolveMethodImpl(HotSpotTypeResolved klass, String name, String signature); |
522 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiType_3resolveMethodImpl(JNIEnv *, jobject, jobject resolved_type, jstring name, jstring signature) { | 522 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiType_3resolveMethodImpl(JNIEnv *, jobject, jobject resolved_type, jstring name, jstring signature) { |
523 TRACE_graal_3("CompilerToVM::RiType_resolveMethodImpl"); | 523 TRACE_graal_3("CompilerToVM::RiType_resolveMethodImpl"); |
524 VM_ENTRY_MARK; | 524 VM_ENTRY_MARK; |
525 | 525 |
526 assert(JNIHandles::resolve(resolved_type) != NULL, ""); | 526 assert(JNIHandles::resolve(resolved_type) != NULL, ""); |
527 klassOop klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(resolved_type)); | 527 klassOop klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(resolved_type)); |
538 Handle ret = GraalCompiler::createHotSpotMethodResolved(method, CHECK_NULL); | 538 Handle ret = GraalCompiler::createHotSpotMethodResolved(method, CHECK_NULL); |
539 return JNIHandles::make_local(THREAD, ret()); | 539 return JNIHandles::make_local(THREAD, ret()); |
540 } | 540 } |
541 | 541 |
542 // public boolean RiType_isSubtypeOf(HotSpotTypeResolved klass, RiType other); | 542 // public boolean RiType_isSubtypeOf(HotSpotTypeResolved klass, RiType other); |
543 JNIEXPORT jboolean JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiType_2isSubtypeOf(JNIEnv *, jobject, jobject klass, jobject jother) { | 543 JNIEXPORT jboolean JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiType_2isSubtypeOf(JNIEnv *, jobject, jobject klass, jobject jother) { |
544 TRACE_graal_3("CompilerToVM::RiType_isSubtypeOf"); | 544 TRACE_graal_3("CompilerToVM::RiType_isSubtypeOf"); |
545 VM_ENTRY_MARK; | 545 VM_ENTRY_MARK; |
546 | 546 |
547 oop other = JNIHandles::resolve(jother); | 547 oop other = JNIHandles::resolve(jother); |
548 assert(other->is_a(HotSpotTypeResolved::klass()), "resolved hotspot type expected"); | 548 assert(other->is_a(HotSpotTypeResolved::klass()), "resolved hotspot type expected"); |
558 return false; | 558 return false; |
559 } | 559 } |
560 } | 560 } |
561 | 561 |
562 // public RiType RiType_leastCommonAncestor(HotSpotTypeResolved thisType, HotSpotTypeResolved otherType); | 562 // public RiType RiType_leastCommonAncestor(HotSpotTypeResolved thisType, HotSpotTypeResolved otherType); |
563 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiType_2leastCommonAncestor(JNIEnv *, jobject, jobject this_type, jobject other_type) { | 563 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiType_2leastCommonAncestor(JNIEnv *, jobject, jobject this_type, jobject other_type) { |
564 TRACE_graal_3("CompilerToVM::RiType_leastCommonAncestor"); | 564 TRACE_graal_3("CompilerToVM::RiType_leastCommonAncestor"); |
565 VM_ENTRY_MARK; | 565 VM_ENTRY_MARK; |
566 | 566 |
567 Klass* this_klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(this_type))->klass_part(); | 567 Klass* this_klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(this_type))->klass_part(); |
568 Klass* other_klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(other_type))->klass_part(); | 568 Klass* other_klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(other_type))->klass_part(); |
570 | 570 |
571 return JNIHandles::make_local(GraalCompiler::get_RiType(lca, THREAD)()); | 571 return JNIHandles::make_local(GraalCompiler::get_RiType(lca, THREAD)()); |
572 } | 572 } |
573 | 573 |
574 // public RiType RiType_componentType(HotSpotResolvedType klass); | 574 // public RiType RiType_componentType(HotSpotResolvedType klass); |
575 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiType_1componentType(JNIEnv *, jobject, jobject klass) { | 575 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiType_1componentType(JNIEnv *, jobject, jobject klass) { |
576 TRACE_graal_3("CompilerToVM::RiType_componentType"); | 576 TRACE_graal_3("CompilerToVM::RiType_componentType"); |
577 VM_ENTRY_MARK; | 577 VM_ENTRY_MARK; |
578 KlassHandle array_klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass)); | 578 KlassHandle array_klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass)); |
579 if(array_klass->oop_is_typeArray()) { | 579 if(array_klass->oop_is_typeArray()) { |
580 BasicType t = typeArrayKlass::cast(array_klass())->element_type(); | 580 BasicType t = typeArrayKlass::cast(array_klass())->element_type(); |
586 assert(JNIHandles::resolve(klass) != NULL, ""); | 586 assert(JNIHandles::resolve(klass) != NULL, ""); |
587 return JNIHandles::make_local(GraalCompiler::get_RiType(element_type, THREAD)()); | 587 return JNIHandles::make_local(GraalCompiler::get_RiType(element_type, THREAD)()); |
588 } | 588 } |
589 | 589 |
590 // public RiType RiType_superType(HotSpotResolvedType klass); | 590 // public RiType RiType_superType(HotSpotResolvedType klass); |
591 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiType_1superType(JNIEnv *, jobject, jobject klass) { | 591 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiType_1superType(JNIEnv *, jobject, jobject klass) { |
592 TRACE_graal_3("CompilerToVM::RiType_superType"); | 592 TRACE_graal_3("CompilerToVM::RiType_superType"); |
593 VM_ENTRY_MARK; | 593 VM_ENTRY_MARK; |
594 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); | 594 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); |
595 klassOop k; | 595 klassOop k; |
596 | 596 |
607 return NULL; | 607 return NULL; |
608 } | 608 } |
609 } | 609 } |
610 | 610 |
611 // public RiType RiType_uniqueConcreteSubtype(HotSpotResolvedType klass); | 611 // public RiType RiType_uniqueConcreteSubtype(HotSpotResolvedType klass); |
612 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiType_1uniqueConcreteSubtype(JNIEnv *, jobject, jobject klass) { | 612 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiType_1uniqueConcreteSubtype(JNIEnv *, jobject, jobject klass) { |
613 TRACE_graal_3("CompilerToVM::RiType_uniqueConcreteSubtype"); | 613 TRACE_graal_3("CompilerToVM::RiType_uniqueConcreteSubtype"); |
614 VM_ENTRY_MARK; | 614 VM_ENTRY_MARK; |
615 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); | 615 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); |
616 Klass *up_cast = klass_handle->up_cast_abstract(); | 616 Klass *up_cast = klass_handle->up_cast_abstract(); |
617 if (up_cast->is_leaf_class()) { | 617 if (up_cast->is_leaf_class()) { |
619 } | 619 } |
620 return NULL; | 620 return NULL; |
621 } | 621 } |
622 | 622 |
623 // public bool RiType_isInitialized(HotSpotResolvedType klass); | 623 // public bool RiType_isInitialized(HotSpotResolvedType klass); |
624 JNIEXPORT jboolean JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiType_1isInitialized(JNIEnv *, jobject, jobject hotspot_klass) { | 624 JNIEXPORT jboolean JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiType_1isInitialized(JNIEnv *, jobject, jobject hotspot_klass) { |
625 TRACE_graal_3("CompilerToVM::RiType_isInitialized"); | 625 TRACE_graal_3("CompilerToVM::RiType_isInitialized"); |
626 klassOop klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(hotspot_klass)); | 626 klassOop klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(hotspot_klass)); |
627 assert(klass != NULL, "method must not be called for primitive types"); | 627 assert(klass != NULL, "method must not be called for primitive types"); |
628 return instanceKlass::cast(klass)->is_initialized(); | 628 return instanceKlass::cast(klass)->is_initialized(); |
629 } | 629 } |
630 | 630 |
631 // public RiType RiType_arrayOf(HotSpotTypeResolved klass); | 631 // public RiType RiType_arrayOf(HotSpotTypeResolved klass); |
632 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiType_1arrayOf(JNIEnv *, jobject, jobject klass) { | 632 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiType_1arrayOf(JNIEnv *, jobject, jobject klass) { |
633 TRACE_graal_3("CompilerToVM::RiType_arrayOf"); | 633 TRACE_graal_3("CompilerToVM::RiType_arrayOf"); |
634 VM_ENTRY_MARK; | 634 VM_ENTRY_MARK; |
635 | 635 |
636 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); | 636 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); |
637 KlassHandle arr = klass_handle->array_klass(THREAD); | 637 KlassHandle arr = klass_handle->array_klass(THREAD); |
639 assert(arr->oop_is_array(), ""); | 639 assert(arr->oop_is_array(), ""); |
640 return JNIHandles::make_local(THREAD, GraalCompiler::createHotSpotTypeResolved(arr, name, THREAD)()); | 640 return JNIHandles::make_local(THREAD, GraalCompiler::createHotSpotTypeResolved(arr, name, THREAD)()); |
641 } | 641 } |
642 | 642 |
643 // public RiResolvedField[] RiType_fields(HotSpotTypeResolved klass); | 643 // public RiResolvedField[] RiType_fields(HotSpotTypeResolved klass); |
644 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiType_1fields(JNIEnv *, jobject, jobject klass) { | 644 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiType_1fields(JNIEnv *, jobject, jobject klass) { |
645 TRACE_graal_3("CompilerToVM::RiType_fields"); | 645 TRACE_graal_3("CompilerToVM::RiType_fields"); |
646 VM_ENTRY_MARK; | 646 VM_ENTRY_MARK; |
647 ResourceMark rm; | 647 ResourceMark rm; |
648 | 648 |
649 instanceKlassHandle k = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass)); | 649 instanceKlassHandle k = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass)); |
673 } | 673 } |
674 return JNIHandles::make_local(field_array()); | 674 return JNIHandles::make_local(field_array()); |
675 } | 675 } |
676 | 676 |
677 // public RiType getPrimitiveArrayType(CiKind kind); | 677 // public RiType getPrimitiveArrayType(CiKind kind); |
678 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_getPrimitiveArrayType(JNIEnv *env, jobject, jobject kind) { | 678 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_getPrimitiveArrayType(JNIEnv *env, jobject, jobject kind) { |
679 TRACE_graal_3("CompilerToVM::getPrimitiveArrayType"); | 679 TRACE_graal_3("CompilerToVM::getPrimitiveArrayType"); |
680 VM_ENTRY_MARK; | 680 VM_ENTRY_MARK; |
681 BasicType type = GraalCompiler::kindToBasicType(CiKind::typeChar(kind)); | 681 BasicType type = GraalCompiler::kindToBasicType(CiKind::typeChar(kind)); |
682 assert(type != T_OBJECT, "primitive type expecteds"); | 682 assert(type != T_OBJECT, "primitive type expecteds"); |
683 Handle result = GraalCompiler::get_RiType(Universe::typeArrayKlassObj(type), CHECK_NULL); | 683 Handle result = GraalCompiler::get_RiType(Universe::typeArrayKlassObj(type), CHECK_NULL); |
684 return JNIHandles::make_local(THREAD, result()); | 684 return JNIHandles::make_local(THREAD, result()); |
685 } | 685 } |
686 | 686 |
687 // public long getMaxCallTargetOffset(CiRuntimeCall rtcall); | 687 // public long getMaxCallTargetOffset(CiRuntimeCall rtcall); |
688 JNIEXPORT jlong JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_getMaxCallTargetOffset(JNIEnv *env, jobject, jobject rtcall) { | 688 JNIEXPORT jlong JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_getMaxCallTargetOffset(JNIEnv *env, jobject, jobject rtcall) { |
689 TRACE_graal_3("CompilerToVM::getMaxCallTargetOffset"); | 689 TRACE_graal_3("CompilerToVM::getMaxCallTargetOffset"); |
690 VM_ENTRY_MARK; | 690 VM_ENTRY_MARK; |
691 oop call = JNIHandles::resolve(rtcall); | 691 oop call = JNIHandles::resolve(rtcall); |
692 address target_addr = CodeInstaller::runtime_call_target_address(call); | 692 address target_addr = CodeInstaller::runtime_call_target_address(call); |
693 if (target_addr != 0x0) { | 693 if (target_addr != 0x0) { |
697 } | 697 } |
698 return -1; | 698 return -1; |
699 } | 699 } |
700 | 700 |
701 // public RiType getType(Class<?> javaClass); | 701 // public RiType getType(Class<?> javaClass); |
702 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_getType(JNIEnv *env, jobject, jobject javaClass) { | 702 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_getType(JNIEnv *env, jobject, jobject javaClass) { |
703 TRACE_graal_3("CompilerToVM::getType"); | 703 TRACE_graal_3("CompilerToVM::getType"); |
704 VM_ENTRY_MARK; | 704 VM_ENTRY_MARK; |
705 oop javaClassOop = JNIHandles::resolve(javaClass); | 705 oop javaClassOop = JNIHandles::resolve(javaClass); |
706 if (javaClassOop == NULL) { | 706 if (javaClassOop == NULL) { |
707 fatal("argument to CompilerToVM.getType must not be NULL"); | 707 fatal("argument to CompilerToVM.getType must not be NULL"); |
743 | 743 |
744 BasicType basicTypes[] = { T_BOOLEAN, T_BYTE, T_SHORT, T_CHAR, T_INT, T_FLOAT, T_LONG, T_DOUBLE, T_OBJECT }; | 744 BasicType basicTypes[] = { T_BOOLEAN, T_BYTE, T_SHORT, T_CHAR, T_INT, T_FLOAT, T_LONG, T_DOUBLE, T_OBJECT }; |
745 int basicTypeCount = sizeof(basicTypes) / sizeof(BasicType); | 745 int basicTypeCount = sizeof(basicTypes) / sizeof(BasicType); |
746 | 746 |
747 // public HotSpotVMConfig getConfiguration(); | 747 // public HotSpotVMConfig getConfiguration(); |
748 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_getConfiguration(JNIEnv *env, jobject) { | 748 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_getConfiguration(JNIEnv *env, jobject) { |
749 jclass klass = env->FindClass("com/oracle/max/graal/hotspot/HotSpotVMConfig"); | 749 jclass klass = env->FindClass("com/oracle/graal/hotspot/HotSpotVMConfig"); |
750 assert(klass != NULL, "HotSpot vm config class not found"); | 750 assert(klass != NULL, "HotSpot vm config class not found"); |
751 jobject config = env->AllocObject(klass); | 751 jobject config = env->AllocObject(klass); |
752 #ifdef _WIN64 | 752 #ifdef _WIN64 |
753 set_boolean(env, config, "windowsOs", true); | 753 set_boolean(env, config, "windowsOs", true); |
754 #else | 754 #else |
848 set_int(env, config, "arrayClassElementOffset", in_bytes(objArrayKlass::element_klass_offset())); | 848 set_int(env, config, "arrayClassElementOffset", in_bytes(objArrayKlass::element_klass_offset())); |
849 return config; | 849 return config; |
850 } | 850 } |
851 | 851 |
852 // public HotSpotCompiledMethod installMethod(HotSpotTargetMethod targetMethod, boolean installCode); | 852 // public HotSpotCompiledMethod installMethod(HotSpotTargetMethod targetMethod, boolean installCode); |
853 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_installMethod(JNIEnv *jniEnv, jobject, jobject targetMethod, jboolean install_code) { | 853 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_installMethod(JNIEnv *jniEnv, jobject, jobject targetMethod, jboolean install_code) { |
854 VM_ENTRY_MARK; | 854 VM_ENTRY_MARK; |
855 ResourceMark rm; | 855 ResourceMark rm; |
856 HandleMark hm; | 856 HandleMark hm; |
857 Handle targetMethodHandle = JNIHandles::resolve(targetMethod); | 857 Handle targetMethodHandle = JNIHandles::resolve(targetMethod); |
858 nmethod* nm = NULL; | 858 nmethod* nm = NULL; |
874 return NULL; | 874 return NULL; |
875 } | 875 } |
876 } | 876 } |
877 | 877 |
878 // public long installStub(HotSpotTargetMethod targetMethod, String name); | 878 // public long installStub(HotSpotTargetMethod targetMethod, String name); |
879 JNIEXPORT jlong JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_installStub(JNIEnv *jniEnv, jobject, jobject targetMethod) { | 879 JNIEXPORT jlong JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_installStub(JNIEnv *jniEnv, jobject, jobject targetMethod) { |
880 VM_ENTRY_MARK; | 880 VM_ENTRY_MARK; |
881 ResourceMark rm; | 881 ResourceMark rm; |
882 HandleMark hm; | 882 HandleMark hm; |
883 Handle targetMethodHandle = JNIHandles::resolve(targetMethod); | 883 Handle targetMethodHandle = JNIHandles::resolve(targetMethod); |
884 jlong id; | 884 jlong id; |
887 CodeInstaller installer(targetMethodHandle, id); | 887 CodeInstaller installer(targetMethodHandle, id); |
888 return id; | 888 return id; |
889 } | 889 } |
890 | 890 |
891 // public String disassembleNative(byte[] code, long address); | 891 // public String disassembleNative(byte[] code, long address); |
892 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_disassembleNative(JNIEnv *jniEnv, jobject, jbyteArray code, jlong start_address) { | 892 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_disassembleNative(JNIEnv *jniEnv, jobject, jbyteArray code, jlong start_address) { |
893 TRACE_graal_3("CompilerToVM::disassembleNative"); | 893 TRACE_graal_3("CompilerToVM::disassembleNative"); |
894 VM_ENTRY_MARK; | 894 VM_ENTRY_MARK; |
895 ResourceMark rm; | 895 ResourceMark rm; |
896 HandleMark hm; | 896 HandleMark hm; |
897 | 897 |
905 Handle result = java_lang_String::create_from_platform_dependent_str(st.as_string(), CHECK_NULL); | 905 Handle result = java_lang_String::create_from_platform_dependent_str(st.as_string(), CHECK_NULL); |
906 return JNIHandles::make_local(result()); | 906 return JNIHandles::make_local(result()); |
907 } | 907 } |
908 | 908 |
909 // public String disassembleJava(HotSpotMethodResolved method); | 909 // public String disassembleJava(HotSpotMethodResolved method); |
910 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_disassembleJava(JNIEnv *env, jobject, jobject hotspot_method) { | 910 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_disassembleJava(JNIEnv *env, jobject, jobject hotspot_method) { |
911 TRACE_graal_3("CompilerToVM::disassembleJava"); | 911 TRACE_graal_3("CompilerToVM::disassembleJava"); |
912 | 912 |
913 // Important: The bytecode printing functions are all NOT PRODUCT code, so this method returns an empty string for a product VM build. | 913 // Important: The bytecode printing functions are all NOT PRODUCT code, so this method returns an empty string for a product VM build. |
914 | 914 |
915 VM_ENTRY_MARK; | 915 VM_ENTRY_MARK; |
924 Handle result = java_lang_String::create_from_platform_dependent_str(st.as_string(), CHECK_NULL); | 924 Handle result = java_lang_String::create_from_platform_dependent_str(st.as_string(), CHECK_NULL); |
925 return JNIHandles::make_local(result()); | 925 return JNIHandles::make_local(result()); |
926 } | 926 } |
927 | 927 |
928 // public Object executeCompiledMethod(HotSpotCompiledMethod method, Object arg1, Object arg2, Object arg3); | 928 // public Object executeCompiledMethod(HotSpotCompiledMethod method, Object arg1, Object arg2, Object arg3); |
929 JNIEXPORT jobject JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_executeCompiledMethod(JNIEnv *env, jobject, jobject method, jobject arg1, jobject arg2, jobject arg3) { | 929 JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_executeCompiledMethod(JNIEnv *env, jobject, jobject method, jobject arg1, jobject arg2, jobject arg3) { |
930 TRACE_graal_3("CompilerToVM::executeCompiledMethod"); | 930 TRACE_graal_3("CompilerToVM::executeCompiledMethod"); |
931 | 931 |
932 VM_ENTRY_MARK; | 932 VM_ENTRY_MARK; |
933 ResourceMark rm; | 933 ResourceMark rm; |
934 HandleMark hm; | 934 HandleMark hm; |
950 | 950 |
951 return JNIHandles::make_local((oop) result.get_jobject()); | 951 return JNIHandles::make_local((oop) result.get_jobject()); |
952 } | 952 } |
953 | 953 |
954 // public native int RiMethod_vtableEntryOffset(HotSpotMethodResolved method); | 954 // public native int RiMethod_vtableEntryOffset(HotSpotMethodResolved method); |
955 JNIEXPORT jint JNICALL Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_vtableEntryOffset(JNIEnv *, jobject, jobject hotspot_method) { | 955 JNIEXPORT jint JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_RiMethod_vtableEntryOffset(JNIEnv *, jobject, jobject hotspot_method) { |
956 TRACE_graal_3("CompilerToVM::RiMethod_vtableEntryOffset"); | 956 TRACE_graal_3("CompilerToVM::RiMethod_vtableEntryOffset"); |
957 | 957 |
958 methodOop method = getMethodFromHotSpotMethod(hotspot_method); | 958 methodOop method = getMethodFromHotSpotMethod(hotspot_method); |
959 assert(!instanceKlass::cast(method->method_holder())->is_interface(), "vtableEntryOffset cannot be called for interface methods"); | 959 assert(!instanceKlass::cast(method->method_holder())->is_interface(), "vtableEntryOffset cannot be called for interface methods"); |
960 | 960 |
966 return vtable_entry_offset; | 966 return vtable_entry_offset; |
967 } | 967 } |
968 | 968 |
969 | 969 |
970 #define CC (char*) /*cast a literal from (const char*)*/ | 970 #define CC (char*) /*cast a literal from (const char*)*/ |
971 #define FN_PTR(f) CAST_FROM_FN_PTR(void*, &(Java_com_oracle_max_graal_hotspot_bridge_CompilerToVMImpl_##f)) | 971 #define FN_PTR(f) CAST_FROM_FN_PTR(void*, &(Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_##f)) |
972 | 972 |
973 #define PROXY "J" | 973 #define PROXY "J" |
974 #define TYPE "Lcom/oracle/max/cri/ri/RiType;" | 974 #define TYPE "Lcom/oracle/max/cri/ri/RiType;" |
975 #define RESOLVED_TYPE "Lcom/oracle/max/graal/hotspot/ri/HotSpotTypeResolved;" | 975 #define RESOLVED_TYPE "Lcom/oracle/graal/hotspot/ri/HotSpotTypeResolved;" |
976 #define METHOD "Lcom/oracle/max/cri/ri/RiMethod;" | 976 #define METHOD "Lcom/oracle/max/cri/ri/RiMethod;" |
977 #define RESOLVED_METHOD "Lcom/oracle/max/graal/hotspot/ri/HotSpotMethodResolved;" | 977 #define RESOLVED_METHOD "Lcom/oracle/graal/hotspot/ri/HotSpotMethodResolved;" |
978 #define REFLECT_METHOD "Ljava/lang/reflect/Method;" | 978 #define REFLECT_METHOD "Ljava/lang/reflect/Method;" |
979 #define SIGNATURE "Lcom/oracle/max/cri/ri/RiSignature;" | 979 #define SIGNATURE "Lcom/oracle/max/cri/ri/RiSignature;" |
980 #define FIELD "Lcom/oracle/max/cri/ri/RiField;" | 980 #define FIELD "Lcom/oracle/max/cri/ri/RiField;" |
981 #define RESOLVED_FIELD "Lcom/oracle/max/cri/ri/RiResolvedField;" | 981 #define RESOLVED_FIELD "Lcom/oracle/max/cri/ri/RiResolvedField;" |
982 #define CONSTANT_POOL "Lcom/oracle/max/cri/ri/RiConstantPool;" | 982 #define CONSTANT_POOL "Lcom/oracle/max/cri/ri/RiConstantPool;" |
983 #define EXCEPTION_HANDLERS "[Lcom/oracle/max/cri/ri/RiExceptionHandler;" | 983 #define EXCEPTION_HANDLERS "[Lcom/oracle/max/cri/ri/RiExceptionHandler;" |
984 #define TARGET_METHOD "Lcom/oracle/max/graal/hotspot/HotSpotTargetMethod;" | 984 #define TARGET_METHOD "Lcom/oracle/graal/hotspot/HotSpotTargetMethod;" |
985 #define CONFIG "Lcom/oracle/max/graal/hotspot/HotSpotVMConfig;" | 985 #define CONFIG "Lcom/oracle/graal/hotspot/HotSpotVMConfig;" |
986 #define HS_METHOD "Lcom/oracle/max/graal/hotspot/ri/HotSpotMethod;" | 986 #define HS_METHOD "Lcom/oracle/graal/hotspot/ri/HotSpotMethod;" |
987 #define HS_COMP_METHOD "Lcom/oracle/max/graal/hotspot/ri/HotSpotCompiledMethod;" | 987 #define HS_COMP_METHOD "Lcom/oracle/graal/hotspot/ri/HotSpotCompiledMethod;" |
988 #define METHOD_DATA "Lcom/oracle/max/graal/hotspot/ri/HotSpotMethodData;" | 988 #define METHOD_DATA "Lcom/oracle/graal/hotspot/ri/HotSpotMethodData;" |
989 #define CI_CONSTANT "Lcom/oracle/max/cri/ci/CiConstant;" | 989 #define CI_CONSTANT "Lcom/oracle/max/cri/ci/CiConstant;" |
990 #define CI_KIND "Lcom/oracle/max/cri/ci/CiKind;" | 990 #define CI_KIND "Lcom/oracle/max/cri/ci/CiKind;" |
991 #define CI_RUNTIME_CALL "Lcom/oracle/max/cri/ci/CiRuntimeCall;" | 991 #define CI_RUNTIME_CALL "Lcom/oracle/max/cri/ci/CiRuntimeCall;" |
992 #define STRING "Ljava/lang/String;" | 992 #define STRING "Ljava/lang/String;" |
993 #define OBJECT "Ljava/lang/Object;" | 993 #define OBJECT "Ljava/lang/Object;" |