comparison src/share/vm/graal/graalVMEntries.cpp @ 3098:2fb14099d069

fix for unresolved exception bug, exactType and declaredType logic for inlining, more on escape analysis
author Lukas Stadler <lukas.stadler@jku.at>
date Wed, 29 Jun 2011 19:52:51 +0200
parents 536528f48708
children 76507b87dd25
comparison
equal deleted inserted replaced
3092:f34c90b89f54 3098:2fb14099d069
634 // public RiField[] RiType_fields(HotSpotTypeResolved klass); 634 // public RiField[] RiType_fields(HotSpotTypeResolved klass);
635 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiType_1fields(JNIEnv *, jobject, jobject klass) { 635 JNIEXPORT jobject JNICALL Java_com_oracle_graal_runtime_VMEntries_RiType_1fields(JNIEnv *, jobject, jobject klass) {
636 TRACE_graal_3("VMEntries::RiType_fields"); 636 TRACE_graal_3("VMEntries::RiType_fields");
637 KlassHandle klass_handle; 637 KlassHandle klass_handle;
638 ciInstanceKlass* instance_klass; 638 ciInstanceKlass* instance_klass;
639 objArrayHandle fieldsArray;
640 HandleMark hm;
639 { 641 {
640 VM_ENTRY_MARK; 642 VM_ENTRY_MARK;
641 klass_handle = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass)); 643 klass_handle = java_lang_Class::as_klassOop(HotSpotTypeResolved::javaMirror(klass));
642 instance_klass = (ciInstanceKlass*) CURRENT_ENV->get_object(klass_handle()); 644 instance_klass = (ciInstanceKlass *) CURRENT_ENV->get_object(klass_handle());
643 } 645 }
644 GrowableArray<ciField*>* fields = instance_klass->non_static_fields(); 646 GrowableArray<ciField*>* fields = instance_klass->non_static_fields();
645
646 objArrayHandle fieldsArray;
647 { 647 {
648 VM_ENTRY_MARK; 648 VM_ENTRY_MARK;
649 fieldsArray = oopFactory::new_objArray(SystemDictionary::RiField_klass(), fields->length(), CHECK_NULL); 649 fieldsArray = oopFactory::new_objArray(SystemDictionary::RiField_klass(), fields->length(), CHECK_NULL);
650 for (int i = 0; i < fields->length(); i++) { 650 for (int i = 0; i < fields->length(); i++) {
651 ciField* field = fields->at(i); 651 ciField* field = fields->at(i);