hotspot/src/share/vm/runtime/jniHandles.cpp
changeset 7896 08aadd7aa3ee
parent 7397 5b173b4ca846
child 7918 ce1e4ae77aea
equal deleted inserted replaced
7895:e71bad345f3a 7896:08aadd7aa3ee
    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");