1309 objArrayHandle synchronizers_array; |
1309 objArrayHandle synchronizers_array; |
1310 |
1310 |
1311 if (locked_monitors) { |
1311 if (locked_monitors) { |
1312 // Constructs Object[] and int[] to contain the object monitor and the stack depth |
1312 // Constructs Object[] and int[] to contain the object monitor and the stack depth |
1313 // where the thread locked it |
1313 // where the thread locked it |
1314 objArrayOop array = oopFactory::new_system_objArray(num_locked_monitors, CHECK_NULL); |
1314 objArrayOop array = oopFactory::new_system_objArray(num_locked_monitors, false, CHECK_NULL); |
1315 objArrayHandle mh(THREAD, array); |
1315 objArrayHandle mh(THREAD, array); |
1316 monitors_array = mh; |
1316 monitors_array = mh; |
1317 |
1317 |
1318 typeArrayOop tarray = oopFactory::new_typeArray(T_INT, num_locked_monitors, CHECK_NULL); |
1318 typeArrayOop tarray = oopFactory::new_typeArray(T_INT, num_locked_monitors, CHECK_NULL); |
1319 typeArrayHandle dh(THREAD, tarray); |
1319 typeArrayHandle dh(THREAD, tarray); |
1351 assert(ts->threadObj() != NULL, "Must be a valid JavaThread"); |
1351 assert(ts->threadObj() != NULL, "Must be a valid JavaThread"); |
1352 ThreadConcurrentLocks* tcl = ts->get_concurrent_locks(); |
1352 ThreadConcurrentLocks* tcl = ts->get_concurrent_locks(); |
1353 GrowableArray<instanceOop>* locks = (tcl != NULL ? tcl->owned_locks() : NULL); |
1353 GrowableArray<instanceOop>* locks = (tcl != NULL ? tcl->owned_locks() : NULL); |
1354 int num_locked_synchronizers = (locks != NULL ? locks->length() : 0); |
1354 int num_locked_synchronizers = (locks != NULL ? locks->length() : 0); |
1355 |
1355 |
1356 objArrayOop array = oopFactory::new_system_objArray(num_locked_synchronizers, CHECK_NULL); |
1356 objArrayOop array = oopFactory::new_system_objArray(num_locked_synchronizers, false, CHECK_NULL); |
1357 objArrayHandle sh(THREAD, array); |
1357 objArrayHandle sh(THREAD, array); |
1358 synchronizers_array = sh; |
1358 synchronizers_array = sh; |
1359 |
1359 |
1360 for (int k = 0; k < num_locked_synchronizers; k++) { |
1360 for (int k = 0; k < num_locked_synchronizers; k++) { |
1361 synchronizers_array->obj_at_put(k, locks->at(k)); |
1361 synchronizers_array->obj_at_put(k, locks->at(k)); |