hotspot/src/share/vm/oops/klass.cpp
changeset 35544 c7ec868d0923
parent 34666 1c7168ea0034
child 35913 928548a43408
equal deleted inserted replaced
35543:0961315f4016 35544:c7ec868d0923
    42 #include "utilities/stack.inline.hpp"
    42 #include "utilities/stack.inline.hpp"
    43 #if INCLUDE_ALL_GCS
    43 #if INCLUDE_ALL_GCS
    44 #include "gc/g1/g1SATBCardTableModRefBS.hpp"
    44 #include "gc/g1/g1SATBCardTableModRefBS.hpp"
    45 #endif // INCLUDE_ALL_GCS
    45 #endif // INCLUDE_ALL_GCS
    46 
    46 
       
    47 bool Klass::is_cloneable() const {
       
    48   return _access_flags.is_cloneable_fast() ||
       
    49          is_subtype_of(SystemDictionary::Cloneable_klass());
       
    50 }
       
    51 
       
    52 void Klass::set_is_cloneable() {
       
    53   if (name() != vmSymbols::java_lang_invoke_MemberName()) {
       
    54     _access_flags.set_is_cloneable_fast();
       
    55   } else {
       
    56     assert(is_final(), "no subclasses allowed");
       
    57     // MemberName cloning should not be intrinsified and always happen in JVM_Clone.
       
    58   }
       
    59 }
       
    60 
    47 void Klass::set_name(Symbol* n) {
    61 void Klass::set_name(Symbol* n) {
    48   _name = n;
    62   _name = n;
    49   if (_name != NULL) _name->increment_refcount();
    63   if (_name != NULL) _name->increment_refcount();
    50 }
    64 }
    51 
    65