hotspot/src/share/vm/classfile/moduleEntry.hpp
changeset 42634 7459867ebf98
parent 42575 bd1618170c93
child 42647 d01f2abf2c65
equal deleted inserted replaced
42632:c4f00b77b6d4 42634:7459867ebf98
    61   Symbol* _version;                    // module version number
    61   Symbol* _version;                    // module version number
    62   Symbol* _location;                   // module location
    62   Symbol* _location;                   // module location
    63   bool _can_read_all_unnamed;
    63   bool _can_read_all_unnamed;
    64   bool _has_default_read_edges;        // JVMTI redefine/retransform support
    64   bool _has_default_read_edges;        // JVMTI redefine/retransform support
    65   bool _must_walk_reads;               // walk module's reads list at GC safepoints to purge out dead modules
    65   bool _must_walk_reads;               // walk module's reads list at GC safepoints to purge out dead modules
       
    66   bool _is_patched;                    // whether the module is patched via --patch-module
    66   TRACE_DEFINE_TRACE_ID_FIELD;
    67   TRACE_DEFINE_TRACE_ID_FIELD;
    67   enum {MODULE_READS_SIZE = 101};      // Initial size of list of modules that the module can read.
    68   enum {MODULE_READS_SIZE = 101};      // Initial size of list of modules that the module can read.
    68 
    69 
    69 public:
    70 public:
    70   void init() {
    71   void init() {
    75     _version = NULL;
    76     _version = NULL;
    76     _location = NULL;
    77     _location = NULL;
    77     _can_read_all_unnamed = false;
    78     _can_read_all_unnamed = false;
    78     _has_default_read_edges = false;
    79     _has_default_read_edges = false;
    79     _must_walk_reads = false;
    80     _must_walk_reads = false;
       
    81     _is_patched = false;
    80   }
    82   }
    81 
    83 
    82   Symbol*          name() const                        { return literal(); }
    84   Symbol*          name() const                        { return literal(); }
    83   void             set_name(Symbol* n)                 { set_literal(n); }
    85   void             set_name(Symbol* n)                 { set_literal(n); }
    84 
    86 
   129     bool prev = _has_default_read_edges;
   131     bool prev = _has_default_read_edges;
   130     _has_default_read_edges = true;
   132     _has_default_read_edges = true;
   131     return prev;
   133     return prev;
   132   }
   134   }
   133 
   135 
       
   136   void set_is_patched() {
       
   137       _is_patched = true;
       
   138   }
       
   139   bool is_patched() {
       
   140       return _is_patched;
       
   141   }
       
   142 
   134   ModuleEntry* next() const {
   143   ModuleEntry* next() const {
   135     return (ModuleEntry*)HashtableEntry<Symbol*, mtModule>::next();
   144     return (ModuleEntry*)HashtableEntry<Symbol*, mtModule>::next();
   136   }
   145   }
   137   ModuleEntry** next_addr() {
   146   ModuleEntry** next_addr() {
   138     return (ModuleEntry**)HashtableEntry<Symbol*, mtModule>::next_addr();
   147     return (ModuleEntry**)HashtableEntry<Symbol*, mtModule>::next_addr();