comparison src/share/vm/c1x/c1x_VMEntries.cpp @ 1445:a7b84a5e16c6

Remove caching for constant pool entries (same index can be used to retrieve e.g. type and field). Fast fail on bailout in C1X.
author Thomas Wuerthinger <wuerthinger@ssw.jku.at>
date Tue, 09 Nov 2010 13:42:06 +0100
parents 72cfb36c6bb2
children 8cfe3537a0d3
comparison
equal deleted inserted replaced
1444:c0e244017dad 1445:a7b84a5e16c6
447 jlong id; 447 jlong id;
448 CodeInstaller installer(JNIHandles::resolve(targetMethod), id); 448 CodeInstaller installer(JNIHandles::resolve(targetMethod), id);
449 return id; 449 return id;
450 } 450 }
451 451
452 // public void recordBailout(String reason);
453 JNIEXPORT void JNICALL Java_com_sun_hotspot_c1x_VMEntries_recordBailout(JNIEnv *jniEnv, jobject) {
454 fatal("Bailout in C1X");
455 }
456
452 457
453 458
454 459
455 #define CC (char*) /*cast a literal from (const char*)*/ 460 #define CC (char*) /*cast a literal from (const char*)*/
456 #define FN_PTR(f) CAST_FROM_FN_PTR(void*, &f) 461 #define FN_PTR(f) CAST_FROM_FN_PTR(void*, &f)
493 {CC"RiType_arrayOf", CC"("PROXY")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiType_1arrayOf)}, 498 {CC"RiType_arrayOf", CC"("PROXY")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_RiType_1arrayOf)},
494 {CC"getPrimitiveArrayType", CC"("CI_KIND")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_getPrimitiveArrayType)}, 499 {CC"getPrimitiveArrayType", CC"("CI_KIND")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_getPrimitiveArrayType)},
495 {CC"getType", CC"("CLASS")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_getType)}, 500 {CC"getType", CC"("CLASS")"TYPE, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_getType)},
496 {CC"getConfiguration", CC"()"CONFIG, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_getConfiguration)}, 501 {CC"getConfiguration", CC"()"CONFIG, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_getConfiguration)},
497 {CC"installMethod", CC"("TARGET_METHOD")V", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_installMethod)}, 502 {CC"installMethod", CC"("TARGET_METHOD")V", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_installMethod)},
498 {CC"installStub", CC"("TARGET_METHOD")"PROXY, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_installStub)} 503 {CC"installStub", CC"("TARGET_METHOD")"PROXY, FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_installStub)},
504 {CC"recordBailout", CC"("STRING")V", FN_PTR(Java_com_sun_hotspot_c1x_VMEntries_recordBailout)}
499 }; 505 };
500 506
501 int VMEntries_methods_count() { 507 int VMEntries_methods_count() {
502 return sizeof(VMEntries_methods) / sizeof(JNINativeMethod); 508 return sizeof(VMEntries_methods) / sizeof(JNINativeMethod);
503 } 509 }