equal
deleted
inserted
replaced
23 */ |
23 */ |
24 |
24 |
25 #include "precompiled.hpp" |
25 #include "precompiled.hpp" |
26 #include "classfile/systemDictionary.hpp" |
26 #include "classfile/systemDictionary.hpp" |
27 #include "oops/oop.inline.hpp" |
27 #include "oops/oop.inline.hpp" |
|
28 #include "prims/jvmtiTagMap.hpp" |
28 #include "runtime/jniHandles.hpp" |
29 #include "runtime/jniHandles.hpp" |
29 #include "runtime/mutexLocker.hpp" |
30 #include "runtime/mutexLocker.hpp" |
30 #ifdef TARGET_OS_FAMILY_linux |
31 #ifdef TARGET_OS_FAMILY_linux |
31 # include "thread_linux.inline.hpp" |
32 # include "thread_linux.inline.hpp" |
32 #endif |
33 #endif |
426 // the next handle block is valid only if current block is full |
427 // the next handle block is valid only if current block is full |
427 if (current->_top < block_size_in_oops) { |
428 if (current->_top < block_size_in_oops) { |
428 break; |
429 break; |
429 } |
430 } |
430 } |
431 } |
|
432 |
|
433 /* |
|
434 * JvmtiTagMap may also contain weak oops. The iteration of it is placed |
|
435 * here so that we don't need to add it to each of the collectors. |
|
436 */ |
|
437 JvmtiTagMap::weak_oops_do(is_alive, f); |
431 } |
438 } |
432 |
439 |
433 |
440 |
434 jobject JNIHandleBlock::allocate_handle(oop obj) { |
441 jobject JNIHandleBlock::allocate_handle(oop obj) { |
435 assert(Universe::heap()->is_in_reserved(obj), "sanity check"); |
442 assert(Universe::heap()->is_in_reserved(obj), "sanity check"); |