comparison src/share/vm/prims/jvmtiEnvBase.cpp @ 818:b109e761e927

6837472: com/sun/jdi/MonitorFrameInfo.java fails with AggressiveOpts in 6u14 Summary: Disable escape analysis when jvmti/debugger is used. Add support for EA ibto SA. Reviewed-by: never
author kvn
date Tue, 09 Jun 2009 16:19:10 -0700
parents 2f716c0acb64
children bd02caa94611
comparison
equal deleted inserted replaced
793:eacd97c88873 818:b109e761e927
604 jvf = jvf->java_sender()) { 604 jvf = jvf->java_sender()) {
605 GrowableArray<MonitorInfo*>* mons = jvf->monitors(); 605 GrowableArray<MonitorInfo*>* mons = jvf->monitors();
606 if (!mons->is_empty()) { 606 if (!mons->is_empty()) {
607 for (int i = 0; i < mons->length(); i++) { 607 for (int i = 0; i < mons->length(); i++) {
608 MonitorInfo *mi = mons->at(i); 608 MonitorInfo *mi = mons->at(i);
609 if (mi->owner_is_scalar_replaced()) continue;
609 610
610 // see if owner of the monitor is our object 611 // see if owner of the monitor is our object
611 if (mi->owner() != NULL && mi->owner() == hobj()) { 612 if (mi->owner() != NULL && mi->owner() == hobj()) {
612 ret++; 613 ret++;
613 } 614 }
723 } 724 }
724 } 725 }
725 726
726 for (int i = 0; i < mons->length(); i++) { 727 for (int i = 0; i < mons->length(); i++) {
727 MonitorInfo *mi = mons->at(i); 728 MonitorInfo *mi = mons->at(i);
729
730 if (mi->owner_is_scalar_replaced()) continue;
728 731
729 oop obj = mi->owner(); 732 oop obj = mi->owner();
730 if (obj == NULL) { 733 if (obj == NULL) {
731 // this monitor doesn't have an owning object so skip it 734 // this monitor doesn't have an owning object so skip it
732 continue; 735 continue;