Mercurial > hg > truffle
comparison src/share/vm/c1x/c1x_VMEntries.cpp @ 2501:6594e6d8bfe7
Rebranding to com.oracle.graal
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Tue, 26 Apr 2011 21:10:53 +0200 |
parents | ad9b14650e15 |
children | 3e3e8bd12730 |
comparison
equal
deleted
inserted
replaced
2500:f100b972fd19 | 2501:6594e6d8bfe7 |
---|---|
30 #include "c1x/c1x_VMExits.hpp" | 30 #include "c1x/c1x_VMExits.hpp" |
31 #include "c1x/c1x_VmIds.hpp" | 31 #include "c1x/c1x_VmIds.hpp" |
32 #include "c1/c1_Runtime1.hpp" | 32 #include "c1/c1_Runtime1.hpp" |
33 | 33 |
34 // public byte[] RiMethod_code(long vmId); | 34 // public byte[] RiMethod_code(long vmId); |
35 JNIEXPORT jbyteArray JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1code(JNIEnv *env, jobject, jlong vmId) { | 35 JNIEXPORT jbyteArray JNICALL Java_com_oracle_graal_runtime_VMEntries_RiMethod_1code(JNIEnv *env, jobject, jlong vmId) { |
36 TRACE_C1X_3("VMEntries::RiMethod_code"); | 36 TRACE_C1X_3("VMEntries::RiMethod_code"); |
37 methodHandle method = VmIds::get<methodOop>(vmId); | 37 methodHandle method = VmIds::get<methodOop>(vmId); |
38 int code_size = method->code_size(); | 38 int code_size = method->code_size(); |
39 jbyteArray result = env->NewByteArray(code_size); | 39 jbyteArray result = env->NewByteArray(code_size); |
40 env->SetByteArrayRegion(result, 0, code_size, (const jbyte *) method->code_base()); | 40 env->SetByteArrayRegion(result, 0, code_size, (const jbyte *) method->code_base()); |
41 return result; | 41 return result; |
42 } | 42 } |
43 | 43 |
44 // public int RiMethod_maxStackSize(long vmId); | 44 // public int RiMethod_maxStackSize(long vmId); |
45 JNIEXPORT jint JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1maxStackSize(JNIEnv *, jobject, jlong vmId) { | 45 JNIEXPORT jint JNICALL Java_com_oracle_graal_runtime_VMEntries_RiMethod_1maxStackSize(JNIEnv *, jobject, jlong vmId) { |
46 TRACE_C1X_3("VMEntries::RiMethod_maxStackSize"); | 46 TRACE_C1X_3("VMEntries::RiMethod_maxStackSize"); |
47 return VmIds::get<methodOop>(vmId)->max_stack(); | 47 return VmIds::get<methodOop>(vmId)->max_stack(); |
48 } | 48 } |
49 | 49 |
50 // public int RiMethod_maxLocals(long vmId); | 50 // public int RiMethod_maxLocals(long vmId); |
51 JNIEXPORT jint JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1maxLocals(JNIEnv *, jobject, jlong vmId) { | 51 JNIEXPORT jint JNICALL Java_com_oracle_graal_runtime_VMEntries_RiMethod_1maxLocals(JNIEnv *, jobject, jlong vmId) { |
52 TRACE_C1X_3("VMEntries::RiMethod_maxLocals"); | 52 TRACE_C1X_3("VMEntries::RiMethod_maxLocals"); |
53 return VmIds::get<methodOop>(vmId)->max_locals(); | 53 return VmIds::get<methodOop>(vmId)->max_locals(); |
54 } | 54 } |
55 | 55 |
56 // public RiType RiMethod_holder(long vmId); | 56 // public RiType RiMethod_holder(long vmId); |
57 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1holder(JNIEnv *, jobject, jlong vmId) { | 57 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiMethod_1holder(JNIEnv *, jobject, jlong vmId) { |
58 TRACE_C1X_3("VMEntries::RiMethod_holder"); | 58 TRACE_C1X_3("VMEntries::RiMethod_holder"); |
59 VM_ENTRY_MARK | 59 VM_ENTRY_MARK |
60 KlassHandle klass = VmIds::get<methodOop>(vmId)->method_holder(); | 60 KlassHandle klass = VmIds::get<methodOop>(vmId)->method_holder(); |
61 Handle name = VmIds::toString<Handle>(klass->name(), CHECK_NULL); | 61 Handle name = VmIds::toString<Handle>(klass->name(), CHECK_NULL); |
62 oop holder = C1XCompiler::createHotSpotTypeResolved(klass, name, CHECK_NULL); | 62 oop holder = C1XCompiler::createHotSpotTypeResolved(klass, name, CHECK_NULL); |
63 return JNIHandles::make_local(THREAD, holder); | 63 return JNIHandles::make_local(THREAD, holder); |
64 } | 64 } |
65 | 65 |
66 // public String RiMethod_signature(long vmId); | 66 // public String RiMethod_signature(long vmId); |
67 JNIEXPORT jstring JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1signature(JNIEnv *env, jobject, jlong vmId) { | 67 JNIEXPORT jstring JNICALL Java_com_oracle_graal_runtime_VMEntries_RiMethod_1signature(JNIEnv *env, jobject, jlong vmId) { |
68 TRACE_C1X_3("VMEntries::RiMethod_signature"); | 68 TRACE_C1X_3("VMEntries::RiMethod_signature"); |
69 VM_ENTRY_MARK | 69 VM_ENTRY_MARK |
70 methodOop method = VmIds::get<methodOop>(vmId); | 70 methodOop method = VmIds::get<methodOop>(vmId); |
71 method->constMethod()->exception_table(); | 71 method->constMethod()->exception_table(); |
72 return VmIds::toString<jstring>(method->signature(), THREAD); | 72 return VmIds::toString<jstring>(method->signature(), THREAD); |
73 } | 73 } |
74 | 74 |
75 // public int RiMethod_accessFlags(long vmId); | 75 // public int RiMethod_accessFlags(long vmId); |
76 JNIEXPORT jint JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1accessFlags(JNIEnv *, jobject, jlong vmId) { | 76 JNIEXPORT jint JNICALL Java_com_oracle_graal_runtime_VMEntries_RiMethod_1accessFlags(JNIEnv *, jobject, jlong vmId) { |
77 TRACE_C1X_3("VMEntries::RiMethod_accessFlags"); | 77 TRACE_C1X_3("VMEntries::RiMethod_accessFlags"); |
78 return VmIds::get<methodOop>(vmId)->access_flags().as_int(); | 78 return VmIds::get<methodOop>(vmId)->access_flags().as_int(); |
79 } | 79 } |
80 | 80 |
81 // public RiExceptionHandler[] RiMethod_exceptionHandlers(long vmId); | 81 // public RiExceptionHandler[] RiMethod_exceptionHandlers(long vmId); |
82 JNIEXPORT jobjectArray JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1exceptionHandlers(JNIEnv *, jobject, jlong vmId) { | 82 JNIEXPORT jobjectArray JNICALL Java_com_oracle_graal_runtime_VMEntries_RiMethod_1exceptionHandlers(JNIEnv *, jobject, jlong vmId) { |
83 TRACE_C1X_3("VMEntries::RiMethod_exceptionHandlers"); | 83 TRACE_C1X_3("VMEntries::RiMethod_exceptionHandlers"); |
84 VM_ENTRY_MARK | 84 VM_ENTRY_MARK |
85 methodHandle method = VmIds::get<methodOop>(vmId); | 85 methodHandle method = VmIds::get<methodOop>(vmId); |
86 typeArrayHandle handlers = method->exception_table(); | 86 typeArrayHandle handlers = method->exception_table(); |
87 int handler_count = handlers.is_null() ? 0 : handlers->length() / 4; | 87 int handler_count = handlers.is_null() ? 0 : handlers->length() / 4; |
115 | 115 |
116 return (jobjectArray) JNIHandles::make_local(array()); | 116 return (jobjectArray) JNIHandles::make_local(array()); |
117 } | 117 } |
118 | 118 |
119 // public boolean RiMethod_hasBalancedMonitors(long vmId); | 119 // public boolean RiMethod_hasBalancedMonitors(long vmId); |
120 JNIEXPORT jint JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1hasBalancedMonitors(JNIEnv *, jobject, jlong vmId) { | 120 JNIEXPORT jint JNICALL Java_com_oracle_graal_runtime_VMEntries_RiMethod_1hasBalancedMonitors(JNIEnv *, jobject, jlong vmId) { |
121 TRACE_C1X_3("VMEntries::RiMethod_hasBalancedMonitors"); | 121 TRACE_C1X_3("VMEntries::RiMethod_hasBalancedMonitors"); |
122 ciMethod* cimethod; | 122 ciMethod* cimethod; |
123 { | 123 { |
124 VM_ENTRY_MARK; | 124 VM_ENTRY_MARK; |
125 cimethod = (ciMethod*)CURRENT_ENV->get_object(VmIds::get<methodOop>(vmId)); | 125 cimethod = (ciMethod*)CURRENT_ENV->get_object(VmIds::get<methodOop>(vmId)); |
126 } | 126 } |
127 return cimethod->has_balanced_monitors(); | 127 return cimethod->has_balanced_monitors(); |
128 } | 128 } |
129 | 129 |
130 // public boolean RiMethod_uniqueConcreteMethod(long vmId); | 130 // public boolean RiMethod_uniqueConcreteMethod(long vmId); |
131 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1uniqueConcreteMethod(JNIEnv *, jobject, jlong vmId) { | 131 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiMethod_1uniqueConcreteMethod(JNIEnv *, jobject, jlong vmId) { |
132 TRACE_C1X_3("VMEntries::RiMethod_uniqueConcreteMethod"); | 132 TRACE_C1X_3("VMEntries::RiMethod_uniqueConcreteMethod"); |
133 VM_ENTRY_MARK; | 133 VM_ENTRY_MARK; |
134 ciMethod* cimethod = (ciMethod*)CURRENT_ENV->get_object(VmIds::get<methodOop>(vmId)); | 134 ciMethod* cimethod = (ciMethod*)CURRENT_ENV->get_object(VmIds::get<methodOop>(vmId)); |
135 if (cimethod->holder()->is_interface()) { | 135 if (cimethod->holder()->is_interface()) { |
136 // Cannot trust interfaces. Because of: | 136 // Cannot trust interfaces. Because of: |
158 oop method_resolved = VMExits::createRiMethodResolved(VmIds::add<methodOop>(unique_concrete()), name, CHECK_NULL); | 158 oop method_resolved = VMExits::createRiMethodResolved(VmIds::add<methodOop>(unique_concrete()), name, CHECK_NULL); |
159 return JNIHandles::make_local(THREAD, method_resolved); | 159 return JNIHandles::make_local(THREAD, method_resolved); |
160 } | 160 } |
161 | 161 |
162 // public RiType RiSignature_lookupType(String returnType, HotSpotTypeResolved accessingClass); | 162 // public RiType RiSignature_lookupType(String returnType, HotSpotTypeResolved accessingClass); |
163 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiSignature_1lookupType(JNIEnv *env, jobject, jstring jname, jobject accessingClass) { | 163 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiSignature_1lookupType(JNIEnv *env, jobject, jstring jname, jobject accessingClass) { |
164 TRACE_C1X_3("VMEntries::RiSignature_lookupType"); | 164 TRACE_C1X_3("VMEntries::RiSignature_lookupType"); |
165 VM_ENTRY_MARK; | 165 VM_ENTRY_MARK; |
166 | 166 |
167 Symbol* nameSymbol = VmIds::toSymbol(jname); | 167 Symbol* nameSymbol = VmIds::toSymbol(jname); |
168 Handle name = JNIHandles::resolve(jname); | 168 Handle name = JNIHandles::resolve(jname); |
209 | 209 |
210 return JNIHandles::make_local(THREAD, result); | 210 return JNIHandles::make_local(THREAD, result); |
211 } | 211 } |
212 | 212 |
213 // public Object RiConstantPool_lookupConstant(long vmId, int cpi); | 213 // public Object RiConstantPool_lookupConstant(long vmId, int cpi); |
214 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiConstantPool_1lookupConstant(JNIEnv *env, jobject, jlong vmId, jint index) { | 214 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiConstantPool_1lookupConstant(JNIEnv *env, jobject, jlong vmId, jint index) { |
215 TRACE_C1X_3("VMEntries::RiConstantPool_lookupConstant"); | 215 TRACE_C1X_3("VMEntries::RiConstantPool_lookupConstant"); |
216 VM_ENTRY_MARK; | 216 VM_ENTRY_MARK; |
217 | 217 |
218 constantPoolOop cp = VmIds::get<constantPoolOop>(vmId); | 218 constantPoolOop cp = VmIds::get<constantPoolOop>(vmId); |
219 | 219 |
256 | 256 |
257 return JNIHandles::make_local(THREAD, result); | 257 return JNIHandles::make_local(THREAD, result); |
258 } | 258 } |
259 | 259 |
260 // public RiMethod RiConstantPool_lookupMethod(long vmId, int cpi, byte byteCode); | 260 // public RiMethod RiConstantPool_lookupMethod(long vmId, int cpi, byte byteCode); |
261 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiConstantPool_1lookupMethod(JNIEnv *env, jobject, jlong vmId, jint index, jbyte byteCode) { | 261 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiConstantPool_1lookupMethod(JNIEnv *env, jobject, jlong vmId, jint index, jbyte byteCode) { |
262 TRACE_C1X_3("VMEntries::RiConstantPool_lookupMethod"); | 262 TRACE_C1X_3("VMEntries::RiConstantPool_lookupMethod"); |
263 VM_ENTRY_MARK; | 263 VM_ENTRY_MARK; |
264 | 264 |
265 index = C1XCompiler::to_cp_index_u2(index); | 265 index = C1XCompiler::to_cp_index_u2(index); |
266 constantPoolHandle cp = VmIds::get<constantPoolOop>(vmId); | 266 constantPoolHandle cp = VmIds::get<constantPoolOop>(vmId); |
279 return JNIHandles::make_local(THREAD, VMExits::createRiMethodUnresolved(name, signature, holder, THREAD)); | 279 return JNIHandles::make_local(THREAD, VMExits::createRiMethodUnresolved(name, signature, holder, THREAD)); |
280 } | 280 } |
281 } | 281 } |
282 | 282 |
283 // public RiSignature RiConstantPool_lookupSignature(long vmId, int cpi); | 283 // public RiSignature RiConstantPool_lookupSignature(long vmId, int cpi); |
284 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiConstantPool_1lookupSignature(JNIEnv *env, jobject, jlong vmId, jint index) { | 284 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiConstantPool_1lookupSignature(JNIEnv *env, jobject, jlong vmId, jint index) { |
285 fatal("currently unsupported"); | 285 fatal("currently unsupported"); |
286 return NULL; | 286 return NULL; |
287 } | 287 } |
288 | 288 |
289 // public RiType RiConstantPool_lookupType(long vmId, int cpi); | 289 // public RiType RiConstantPool_lookupType(long vmId, int cpi); |
290 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiConstantPool_1lookupType(JNIEnv *env, jobject, jlong vmId, jint index) { | 290 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiConstantPool_1lookupType(JNIEnv *env, jobject, jlong vmId, jint index) { |
291 TRACE_C1X_3("VMEntries::RiConstantPool_lookupType"); | 291 TRACE_C1X_3("VMEntries::RiConstantPool_lookupType"); |
292 VM_ENTRY_MARK; | 292 VM_ENTRY_MARK; |
293 | 293 |
294 constantPoolOop cp = VmIds::get<constantPoolOop>(vmId); | 294 constantPoolOop cp = VmIds::get<constantPoolOop>(vmId); |
295 | 295 |
298 ciKlass *klass = CURRENT_ENV->get_klass_by_index(cp, index, is_accessible, loading_klass); | 298 ciKlass *klass = CURRENT_ENV->get_klass_by_index(cp, index, is_accessible, loading_klass); |
299 return JNIHandles::make_local(THREAD, C1XCompiler::get_RiType(klass, cp->klass(), THREAD)); | 299 return JNIHandles::make_local(THREAD, C1XCompiler::get_RiType(klass, cp->klass(), THREAD)); |
300 } | 300 } |
301 | 301 |
302 // public RiField RiConstantPool_lookupField(long vmId, int cpi); | 302 // public RiField RiConstantPool_lookupField(long vmId, int cpi); |
303 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiConstantPool_1lookupField(JNIEnv *env, jobject, jlong vmId, jint index, jbyte byteCode) { | 303 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiConstantPool_1lookupField(JNIEnv *env, jobject, jlong vmId, jint index, jbyte byteCode) { |
304 TRACE_C1X_3("VMEntries::RiConstantPool_lookupField"); | 304 TRACE_C1X_3("VMEntries::RiConstantPool_lookupField"); |
305 VM_ENTRY_MARK; | 305 VM_ENTRY_MARK; |
306 | 306 |
307 index = C1XCompiler::to_cp_index_u2(index); | 307 index = C1XCompiler::to_cp_index_u2(index); |
308 constantPoolOop cp = VmIds::get<constantPoolOop>(vmId); | 308 constantPoolOop cp = VmIds::get<constantPoolOop>(vmId); |
362 } | 362 } |
363 return JNIHandles::make_local(THREAD, field_handle()); | 363 return JNIHandles::make_local(THREAD, field_handle()); |
364 } | 364 } |
365 | 365 |
366 // public RiConstantPool RiType_constantPool(HotSpotTypeResolved klass); | 366 // public RiConstantPool RiType_constantPool(HotSpotTypeResolved klass); |
367 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiType_1constantPool(JNIEnv *, jobject, jobject klass) { | 367 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiType_1constantPool(JNIEnv *, jobject, jobject klass) { |
368 TRACE_C1X_3("VMEntries::RiType_constantPool"); | 368 TRACE_C1X_3("VMEntries::RiType_constantPool"); |
369 VM_ENTRY_MARK; | 369 VM_ENTRY_MARK; |
370 | 370 |
371 assert(JNIHandles::resolve(klass) != NULL, ""); | 371 assert(JNIHandles::resolve(klass) != NULL, ""); |
372 constantPoolOop constantPool = ((instanceKlass*)java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))->klass_part())->constants(); | 372 constantPoolOop constantPool = ((instanceKlass*)java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))->klass_part())->constants(); |
373 return JNIHandles::make_local(VMExits::createRiConstantPool(VmIds::add<constantPoolOop>(constantPool), THREAD)); | 373 return JNIHandles::make_local(VMExits::createRiConstantPool(VmIds::add<constantPoolOop>(constantPool), THREAD)); |
374 } | 374 } |
375 | 375 |
376 // public RiMethod RiType_resolveMethodImpl(HotSpotTypeResolved klass, String name, String signature); | 376 // public RiMethod RiType_resolveMethodImpl(HotSpotTypeResolved klass, String name, String signature); |
377 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiType_3resolveMethodImpl(JNIEnv *, jobject, jobject resolved_type, jstring name, jstring signature) { | 377 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiType_3resolveMethodImpl(JNIEnv *, jobject, jobject resolved_type, jstring name, jstring signature) { |
378 TRACE_C1X_3("VMEntries::RiType_resolveMethodImpl"); | 378 TRACE_C1X_3("VMEntries::RiType_resolveMethodImpl"); |
379 VM_ENTRY_MARK; | 379 VM_ENTRY_MARK; |
380 | 380 |
381 assert(JNIHandles::resolve(resolved_type) != NULL, ""); | 381 assert(JNIHandles::resolve(resolved_type) != NULL, ""); |
382 klassOop klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(resolved_type)); | 382 klassOop klass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(resolved_type)); |
392 } | 392 } |
393 return JNIHandles::make_local(THREAD, VMExits::createRiMethodResolved(VmIds::add<methodOop>(method), Handle(JNIHandles::resolve(name)), THREAD)); | 393 return JNIHandles::make_local(THREAD, VMExits::createRiMethodResolved(VmIds::add<methodOop>(method), Handle(JNIHandles::resolve(name)), THREAD)); |
394 } | 394 } |
395 | 395 |
396 // public boolean RiType_isSubtypeOf(HotSpotTypeResolved klass, RiType other); | 396 // public boolean RiType_isSubtypeOf(HotSpotTypeResolved klass, RiType other); |
397 JNIEXPORT jboolean JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiType_2isSubtypeOf(JNIEnv *, jobject, jobject klass, jobject jother) { | 397 JNIEXPORT jboolean JNICALL Java_com_oracle_graal_runtime_VMEntries_RiType_2isSubtypeOf(JNIEnv *, jobject, jobject klass, jobject jother) { |
398 TRACE_C1X_3("VMEntries::RiType_isSubtypeOf"); | 398 TRACE_C1X_3("VMEntries::RiType_isSubtypeOf"); |
399 oop other = JNIHandles::resolve(jother); | 399 oop other = JNIHandles::resolve(jother); |
400 assert(other->is_a(HotSpotTypeResolved::klass()), "resolved hotspot type expected"); | 400 assert(other->is_a(HotSpotTypeResolved::klass()), "resolved hotspot type expected"); |
401 assert(JNIHandles::resolve(klass) != NULL, ""); | 401 assert(JNIHandles::resolve(klass) != NULL, ""); |
402 klassOop thisKlass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass)); | 402 klassOop thisKlass = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass)); |
410 return false; | 410 return false; |
411 } | 411 } |
412 } | 412 } |
413 | 413 |
414 // public RiType RiType_componentType(HotSpotResolvedType klass); | 414 // public RiType RiType_componentType(HotSpotResolvedType klass); |
415 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiType_1componentType(JNIEnv *, jobject, jobject klass) { | 415 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiType_1componentType(JNIEnv *, jobject, jobject klass) { |
416 TRACE_C1X_3("VMEntries::RiType_componentType"); | 416 TRACE_C1X_3("VMEntries::RiType_componentType"); |
417 ciArrayKlass* array_klass; | 417 ciArrayKlass* array_klass; |
418 { | 418 { |
419 VM_ENTRY_MARK; | 419 VM_ENTRY_MARK; |
420 assert(JNIHandles::resolve(klass) != NULL, ""); | 420 assert(JNIHandles::resolve(klass) != NULL, ""); |
426 assert(JNIHandles::resolve(klass) != NULL, ""); | 426 assert(JNIHandles::resolve(klass) != NULL, ""); |
427 return JNIHandles::make_local(C1XCompiler::get_RiType(element_type, java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass)), THREAD)); | 427 return JNIHandles::make_local(C1XCompiler::get_RiType(element_type, java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass)), THREAD)); |
428 } | 428 } |
429 | 429 |
430 // public RiType RiType_superType(HotSpotResolvedType klass); | 430 // public RiType RiType_superType(HotSpotResolvedType klass); |
431 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiType_1superType(JNIEnv *, jobject, jobject klass) { | 431 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiType_1superType(JNIEnv *, jobject, jobject klass) { |
432 TRACE_C1X_3("VMEntries::RiType_superType"); | 432 TRACE_C1X_3("VMEntries::RiType_superType"); |
433 VM_ENTRY_MARK; | 433 VM_ENTRY_MARK; |
434 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); | 434 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); |
435 ciInstanceKlass* k = NULL; | 435 ciInstanceKlass* k = NULL; |
436 | 436 |
448 return NULL; | 448 return NULL; |
449 } | 449 } |
450 } | 450 } |
451 | 451 |
452 // public RiType RiType_uniqueConcreteSubtype(HotSpotResolvedType klass); | 452 // public RiType RiType_uniqueConcreteSubtype(HotSpotResolvedType klass); |
453 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiType_1uniqueConcreteSubtype(JNIEnv *, jobject, jobject klass) { | 453 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiType_1uniqueConcreteSubtype(JNIEnv *, jobject, jobject klass) { |
454 TRACE_C1X_3("VMEntries::RiType_uniqueConcreteSubtype"); | 454 TRACE_C1X_3("VMEntries::RiType_uniqueConcreteSubtype"); |
455 Thread* THREAD = Thread::current(); | 455 Thread* THREAD = Thread::current(); |
456 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); | 456 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); |
457 ciInstanceKlass* k = NULL; | 457 ciInstanceKlass* k = NULL; |
458 { | 458 { |
473 | 473 |
474 return NULL; | 474 return NULL; |
475 } | 475 } |
476 | 476 |
477 // public RiType RiType_arrayOf(HotSpotTypeResolved klass); | 477 // public RiType RiType_arrayOf(HotSpotTypeResolved klass); |
478 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_RiType_1arrayOf(JNIEnv *, jobject, jobject klass) { | 478 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiType_1arrayOf(JNIEnv *, jobject, jobject klass) { |
479 TRACE_C1X_3("VMEntries::RiType_arrayOf"); | 479 TRACE_C1X_3("VMEntries::RiType_arrayOf"); |
480 VM_ENTRY_MARK; | 480 VM_ENTRY_MARK; |
481 | 481 |
482 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); | 482 KlassHandle klass_handle(java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass))); |
483 KlassHandle array = klass_handle->array_klass(THREAD); | 483 KlassHandle array = klass_handle->array_klass(THREAD); |
484 Handle name = VmIds::toString<Handle>(array->name(), CHECK_NULL); | 484 Handle name = VmIds::toString<Handle>(array->name(), CHECK_NULL); |
485 return JNIHandles::make_local(THREAD, C1XCompiler::createHotSpotTypeResolved(array, name, THREAD)); | 485 return JNIHandles::make_local(THREAD, C1XCompiler::createHotSpotTypeResolved(array, name, THREAD)); |
486 } | 486 } |
487 | 487 |
488 // public RiType getPrimitiveArrayType(CiKind kind); | 488 // public RiType getPrimitiveArrayType(CiKind kind); |
489 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_getPrimitiveArrayType(JNIEnv *env, jobject, jobject kind) { | 489 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_getPrimitiveArrayType(JNIEnv *env, jobject, jobject kind) { |
490 TRACE_C1X_3("VMEntries::VMEntries_getPrimitiveArrayType"); | 490 TRACE_C1X_3("VMEntries::VMEntries_getPrimitiveArrayType"); |
491 VM_ENTRY_MARK; | 491 VM_ENTRY_MARK; |
492 BasicType type = C1XCompiler::kindToBasicType(CiKind::typeChar(kind)); | 492 BasicType type = C1XCompiler::kindToBasicType(CiKind::typeChar(kind)); |
493 assert(type != T_OBJECT, "primitive type expecteds"); | 493 assert(type != T_OBJECT, "primitive type expecteds"); |
494 ciKlass* klass = ciTypeArrayKlass::make(type); | 494 ciKlass* klass = ciTypeArrayKlass::make(type); |
495 return JNIHandles::make_local(THREAD, C1XCompiler::get_RiType(klass, KlassHandle(), THREAD)); | 495 return JNIHandles::make_local(THREAD, C1XCompiler::get_RiType(klass, KlassHandle(), THREAD)); |
496 } | 496 } |
497 | 497 |
498 // public RiType getType(Class<?> javaClass); | 498 // public RiType getType(Class<?> javaClass); |
499 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_getType(JNIEnv *env, jobject, jobject javaClass) { | 499 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_getType(JNIEnv *env, jobject, jobject javaClass) { |
500 TRACE_C1X_3("VMEntries::VMEntries_getType"); | 500 TRACE_C1X_3("VMEntries::VMEntries_getType"); |
501 VM_ENTRY_MARK; | 501 VM_ENTRY_MARK; |
502 oop javaClassOop = JNIHandles::resolve(javaClass); | 502 oop javaClassOop = JNIHandles::resolve(javaClass); |
503 if (javaClassOop == NULL) { | 503 if (javaClassOop == NULL) { |
504 fatal("argument to VMEntries.getType must not be NULL"); | 504 fatal("argument to VMEntries.getType must not be NULL"); |
541 | 541 |
542 BasicType basicTypes[] = { T_BOOLEAN, T_BYTE, T_SHORT, T_CHAR, T_INT, T_FLOAT, T_LONG, T_DOUBLE, T_OBJECT }; | 542 BasicType basicTypes[] = { T_BOOLEAN, T_BYTE, T_SHORT, T_CHAR, T_INT, T_FLOAT, T_LONG, T_DOUBLE, T_OBJECT }; |
543 int basicTypeCount = sizeof(basicTypes) / sizeof(BasicType); | 543 int basicTypeCount = sizeof(basicTypes) / sizeof(BasicType); |
544 | 544 |
545 // public HotSpotVMConfig getConfiguration(); | 545 // public HotSpotVMConfig getConfiguration(); |
546 JNIEXPORT jobject JNICALL Java_com_sun_hotspot_c1x_VMEntries_getConfiguration(JNIEnv *env, jobject) { | 546 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_getConfiguration(JNIEnv *env, jobject) { |
547 jclass klass = env->FindClass("com/sun/hotspot/c1x/HotSpotVMConfig"); | 547 jclass klass = env->FindClass("com/oracle/graal/runtime/HotSpotVMConfig"); |
548 assert(klass != NULL, "HotSpot vm config class not found"); | 548 assert(klass != NULL, "HotSpot vm config class not found"); |
549 jobject config = env->AllocObject(klass); | 549 jobject config = env->AllocObject(klass); |
550 #ifdef _WIN64 | 550 #ifdef _WIN64 |
551 set_boolean(env, config, "windowsOs", true); | 551 set_boolean(env, config, "windowsOs", true); |
552 #else | 552 #else |
629 set_int(env, config, "arrayClassElementOffset", objArrayKlass::element_klass_offset_in_bytes() + sizeof(oopDesc)); | 629 set_int(env, config, "arrayClassElementOffset", objArrayKlass::element_klass_offset_in_bytes() + sizeof(oopDesc)); |
630 return config; | 630 return config; |
631 } | 631 } |
632 | 632 |
633 // public void installMethod(HotSpotTargetMethod targetMethod); | 633 // public void installMethod(HotSpotTargetMethod targetMethod); |
634 JNIEXPORT void JNICALL Java_com_sun_hotspot_c1x_VMEntries_installMethod(JNIEnv *jniEnv, jobject, jobject targetMethod) { | 634 JNIEXPORT void JNICALL Java_com_oracle_graal_runtime_VMEntries_installMethod(JNIEnv *jniEnv, jobject, jobject targetMethod) { |
635 VM_ENTRY_MARK; | 635 VM_ENTRY_MARK; |
636 CodeInstaller installer(JNIHandles::resolve(targetMethod)); | 636 CodeInstaller installer(JNIHandles::resolve(targetMethod)); |
637 } | 637 } |
638 | 638 |
639 // public HotSpotProxy installStub(HotSpotTargetMethod targetMethod, String name); | 639 // public HotSpotProxy installStub(HotSpotTargetMethod targetMethod, String name); |
640 JNIEXPORT jlong JNICALL Java_com_sun_hotspot_c1x_VMEntries_installStub(JNIEnv *jniEnv, jobject, jobject targetMethod) { | 640 JNIEXPORT jlong JNICALL Java_com_oracle_graal_runtime_VMEntries_installStub(JNIEnv *jniEnv, jobject, jobject targetMethod) { |
641 VM_ENTRY_MARK; | 641 VM_ENTRY_MARK; |
642 jlong id; | 642 jlong id; |
643 CodeInstaller installer(JNIHandles::resolve(targetMethod), id); | 643 CodeInstaller installer(JNIHandles::resolve(targetMethod), id); |
644 return id; | 644 return id; |
645 } | 645 } |
646 | 646 |
647 // public void recordBailout(String reason); | 647 // public void recordBailout(String reason); |
648 JNIEXPORT void JNICALL Java_com_sun_hotspot_c1x_VMEntries_recordBailout(JNIEnv *jniEnv, jobject message) { | 648 JNIEXPORT void JNICALL Java_com_oracle_graal_runtime_VMEntries_recordBailout(JNIEnv *jniEnv, jobject message) { |
649 if (C1XBailoutIsFatal) { | 649 if (C1XBailoutIsFatal) { |
650 Handle msg = JNIHandles::resolve(message); | 650 Handle msg = JNIHandles::resolve(message); |
651 if (!msg.is_null()) { | 651 if (!msg.is_null()) { |
652 java_lang_String::print(msg, tty); | 652 java_lang_String::print(msg, tty); |
653 } | 653 } |
661 #define CC (char*) /*cast a literal from (const char*)*/ | 661 #define CC (char*) /*cast a literal from (const char*)*/ |
662 #define FN_PTR(f) CAST_FROM_FN_PTR(void*, &f) | 662 #define FN_PTR(f) CAST_FROM_FN_PTR(void*, &f) |
663 | 663 |
664 #define PROXY "J" | 664 #define PROXY "J" |
665 #define TYPE "Lcom/sun/cri/ri/RiType;" | 665 #define TYPE "Lcom/sun/cri/ri/RiType;" |
666 #define RESOLVED_TYPE "Lcom/sun/hotspot/c1x/HotSpotTypeResolved;" | 666 #define RESOLVED_TYPE "Lcom/oracle/graal/runtime/HotSpotTypeResolved;" |
667 #define METHOD "Lcom/sun/cri/ri/RiMethod;" | 667 #define METHOD "Lcom/sun/cri/ri/RiMethod;" |
668 #define SIGNATURE "Lcom/sun/cri/ri/RiSignature;" | 668 #define SIGNATURE "Lcom/sun/cri/ri/RiSignature;" |
669 #define FIELD "Lcom/sun/cri/ri/RiField;" | 669 #define FIELD "Lcom/sun/cri/ri/RiField;" |
670 #define CONSTANT_POOL "Lcom/sun/cri/ri/RiConstantPool;" | 670 #define CONSTANT_POOL "Lcom/sun/cri/ri/RiConstantPool;" |
671 #define EXCEPTION_HANDLERS "[Lcom/sun/cri/ri/RiExceptionHandler;" | 671 #define EXCEPTION_HANDLERS "[Lcom/sun/cri/ri/RiExceptionHandler;" |
672 #define TARGET_METHOD "Lcom/sun/hotspot/c1x/HotSpotTargetMethod;" | 672 #define TARGET_METHOD "Lcom/oracle/graal/runtime/HotSpotTargetMethod;" |
673 #define CONFIG "Lcom/sun/hotspot/c1x/HotSpotVMConfig;" | 673 #define CONFIG "Lcom/oracle/graal/runtime/HotSpotVMConfig;" |
674 #define HS_METHOD "Lcom/sun/hotspot/c1x/HotSpotMethod;" | 674 #define HS_METHOD "Lcom/oracle/graal/runtime/HotSpotMethod;" |
675 #define CI_CONSTANT "Lcom/sun/cri/ci/CiConstant;" | 675 #define CI_CONSTANT "Lcom/sun/cri/ci/CiConstant;" |
676 #define CI_KIND "Lcom/sun/cri/ci/CiKind;" | 676 #define CI_KIND "Lcom/sun/cri/ci/CiKind;" |
677 #define STRING "Ljava/lang/String;" | 677 #define STRING "Ljava/lang/String;" |
678 #define OBJECT "Ljava/lang/Object;" | 678 #define OBJECT "Ljava/lang/Object;" |
679 #define CLASS "Ljava/lang/Class;" | 679 #define CLASS "Ljava/lang/Class;" |
680 | 680 |
681 JNINativeMethod VMEntries_methods[] = { | 681 JNINativeMethod VMEntries_methods[] = { |
682 {CC"RiMethod_code", CC"("PROXY")[B", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1code)}, | 682 {CC"RiMethod_code", CC"("PROXY")[B", FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiMethod_1code)}, |
683 {CC"RiMethod_maxStackSize", CC"("PROXY")I", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1maxStackSize)}, | 683 {CC"RiMethod_maxStackSize", CC"("PROXY")I", FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiMethod_1maxStackSize)}, |
684 {CC"RiMethod_maxLocals", CC"("PROXY")I", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1maxLocals)}, | 684 {CC"RiMethod_maxLocals", CC"("PROXY")I", FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiMethod_1maxLocals)}, |
685 {CC"RiMethod_holder", CC"("PROXY")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1holder)}, | 685 {CC"RiMethod_holder", CC"("PROXY")"TYPE, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiMethod_1holder)}, |
686 {CC"RiMethod_signature", CC"("PROXY")"STRING, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1signature)}, | 686 {CC"RiMethod_signature", CC"("PROXY")"STRING, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiMethod_1signature)}, |
687 {CC"RiMethod_accessFlags", CC"("PROXY")I", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1accessFlags)}, | 687 {CC"RiMethod_accessFlags", CC"("PROXY")I", FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiMethod_1accessFlags)}, |
688 {CC"RiMethod_exceptionHandlers", CC"("PROXY")"EXCEPTION_HANDLERS, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1exceptionHandlers)}, | 688 {CC"RiMethod_exceptionHandlers", CC"("PROXY")"EXCEPTION_HANDLERS, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiMethod_1exceptionHandlers)}, |
689 {CC"RiMethod_hasBalancedMonitors", CC"("PROXY")Z", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1hasBalancedMonitors)}, | 689 {CC"RiMethod_hasBalancedMonitors", CC"("PROXY")Z", FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiMethod_1hasBalancedMonitors)}, |
690 {CC"RiMethod_uniqueConcreteMethod", CC"("PROXY")"METHOD, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiMethod_1uniqueConcreteMethod)}, | 690 {CC"RiMethod_uniqueConcreteMethod", CC"("PROXY")"METHOD, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiMethod_1uniqueConcreteMethod)}, |
691 {CC"RiSignature_lookupType", CC"("STRING RESOLVED_TYPE")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiSignature_1lookupType)}, | 691 {CC"RiSignature_lookupType", CC"("STRING RESOLVED_TYPE")"TYPE, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiSignature_1lookupType)}, |
692 {CC"RiConstantPool_lookupConstant", CC"("PROXY"I)"OBJECT, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiConstantPool_1lookupConstant)}, | 692 {CC"RiConstantPool_lookupConstant", CC"("PROXY"I)"OBJECT, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiConstantPool_1lookupConstant)}, |
693 {CC"RiConstantPool_lookupMethod", CC"("PROXY"IB)"METHOD, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiConstantPool_1lookupMethod)}, | 693 {CC"RiConstantPool_lookupMethod", CC"("PROXY"IB)"METHOD, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiConstantPool_1lookupMethod)}, |
694 {CC"RiConstantPool_lookupSignature", CC"("PROXY"I)"SIGNATURE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiConstantPool_1lookupSignature)}, | 694 {CC"RiConstantPool_lookupSignature", CC"("PROXY"I)"SIGNATURE, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiConstantPool_1lookupSignature)}, |
695 {CC"RiConstantPool_lookupType", CC"("PROXY"I)"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiConstantPool_1lookupType)}, | 695 {CC"RiConstantPool_lookupType", CC"("PROXY"I)"TYPE, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiConstantPool_1lookupType)}, |
696 {CC"RiConstantPool_lookupField", CC"("PROXY"IB)"FIELD, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiConstantPool_1lookupField)}, | 696 {CC"RiConstantPool_lookupField", CC"("PROXY"IB)"FIELD, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiConstantPool_1lookupField)}, |
697 {CC"RiType_constantPool", CC"("RESOLVED_TYPE")"CONSTANT_POOL, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiType_1constantPool)}, | 697 {CC"RiType_constantPool", CC"("RESOLVED_TYPE")"CONSTANT_POOL, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiType_1constantPool)}, |
698 {CC"RiType_resolveMethodImpl", CC"("RESOLVED_TYPE STRING STRING")"METHOD, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiType_3resolveMethodImpl)}, | 698 {CC"RiType_resolveMethodImpl", CC"("RESOLVED_TYPE STRING STRING")"METHOD, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiType_3resolveMethodImpl)}, |
699 {CC"RiType_isSubtypeOf", CC"("RESOLVED_TYPE TYPE")Z", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiType_2isSubtypeOf)}, | 699 {CC"RiType_isSubtypeOf", CC"("RESOLVED_TYPE TYPE")Z", FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiType_2isSubtypeOf)}, |
700 {CC"RiType_componentType", CC"("RESOLVED_TYPE")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiType_1componentType)}, | 700 {CC"RiType_componentType", CC"("RESOLVED_TYPE")"TYPE, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiType_1componentType)}, |
701 {CC"RiType_uniqueConcreteSubtype", CC"("RESOLVED_TYPE")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiType_1uniqueConcreteSubtype)}, | 701 {CC"RiType_uniqueConcreteSubtype", CC"("RESOLVED_TYPE")"TYPE, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiType_1uniqueConcreteSubtype)}, |
702 {CC"RiType_superType", CC"("RESOLVED_TYPE")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiType_1superType)}, | 702 {CC"RiType_superType", CC"("RESOLVED_TYPE")"TYPE, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiType_1superType)}, |
703 {CC"RiType_arrayOf", CC"("RESOLVED_TYPE")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiType_1arrayOf)}, | 703 {CC"RiType_arrayOf", CC"("RESOLVED_TYPE")"TYPE, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_RiType_1arrayOf)}, |
704 {CC"getPrimitiveArrayType", CC"("CI_KIND")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_getPrimitiveArrayType)}, | 704 {CC"getPrimitiveArrayType", CC"("CI_KIND")"TYPE, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_getPrimitiveArrayType)}, |
705 {CC"getType", CC"("CLASS")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_getType)}, | 705 {CC"getType", CC"("CLASS")"TYPE, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_getType)}, |
706 {CC"getConfiguration", CC"()"CONFIG, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_getConfiguration)}, | 706 {CC"getConfiguration", CC"()"CONFIG, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_getConfiguration)}, |
707 {CC"installMethod", CC"("TARGET_METHOD")V", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_installMethod)}, | 707 {CC"installMethod", CC"("TARGET_METHOD")V", FN_PTR(Java_com_oracle_graal_runtime_VMEntries_installMethod)}, |
708 {CC"installStub", CC"("TARGET_METHOD")"PROXY, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_installStub)}, | 708 {CC"installStub", CC"("TARGET_METHOD")"PROXY, FN_PTR(Java_com_oracle_graal_runtime_VMEntries_installStub)}, |
709 {CC"recordBailout", CC"("STRING")V", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_recordBailout)} | 709 {CC"recordBailout", CC"("STRING")V", FN_PTR(Java_com_oracle_graal_runtime_VMEntries_recordBailout)} |
710 }; | 710 }; |
711 | 711 |
712 int VMEntries_methods_count() { | 712 int VMEntries_methods_count() { |
713 return sizeof(VMEntries_methods) / sizeof(JNINativeMethod); | 713 return sizeof(VMEntries_methods) / sizeof(JNINativeMethod); |
714 } | 714 } |