102 // not. Only used during verification.
103 bool regions_humongous() { return _is_humongous; }
104
105 // Indicates whether all regions in the set should be empty or
106 // not. Only used during verification.
107 bool regions_empty() { return _is_empty; }
108
109 void check_mt_safety() {
110 if (_mt_safety_checker != NULL) {
111 _mt_safety_checker->check();
112 }
113 }
114
115 virtual void fill_in_ext_msg_extra(hrs_ext_msg* msg) { }
116
117 HeapRegionSetBase(const char* name, bool humongous, bool empty, HRSMtSafeChecker* mt_safety_checker);
118
119 public:
120 const char* name() { return _name; }
121
122 uint length() { return _count.length(); }
123
124 bool is_empty() { return _count.length() == 0; }
125
126 size_t total_capacity_bytes() {
127 return _count.capacity();
128 }
129
130 // It updates the fields of the set to reflect hr being added to
131 // the set and tags the region appropriately.
132 inline void add(HeapRegion* hr);
133
134 // It updates the fields of the set to reflect hr being removed
135 // from the set and tags the region appropriately.
136 inline void remove(HeapRegion* hr);
137
138 // fill_in_ext_msg() writes the the values of the set's attributes
139 // in the custom err_msg (hrs_ext_msg). fill_in_ext_msg_extra()
140 // allows subclasses to append further information.
141 void fill_in_ext_msg(hrs_ext_msg* msg, const char* message);
142
|
102 // not. Only used during verification.
103 bool regions_humongous() { return _is_humongous; }
104
105 // Indicates whether all regions in the set should be empty or
106 // not. Only used during verification.
107 bool regions_empty() { return _is_empty; }
108
109 void check_mt_safety() {
110 if (_mt_safety_checker != NULL) {
111 _mt_safety_checker->check();
112 }
113 }
114
115 virtual void fill_in_ext_msg_extra(hrs_ext_msg* msg) { }
116
117 HeapRegionSetBase(const char* name, bool humongous, bool empty, HRSMtSafeChecker* mt_safety_checker);
118
119 public:
120 const char* name() { return _name; }
121
122 uint length() const { return _count.length(); }
123
124 bool is_empty() { return _count.length() == 0; }
125
126 size_t total_capacity_bytes() {
127 return _count.capacity();
128 }
129
130 // It updates the fields of the set to reflect hr being added to
131 // the set and tags the region appropriately.
132 inline void add(HeapRegion* hr);
133
134 // It updates the fields of the set to reflect hr being removed
135 // from the set and tags the region appropriately.
136 inline void remove(HeapRegion* hr);
137
138 // fill_in_ext_msg() writes the the values of the set's attributes
139 // in the custom err_msg (hrs_ext_msg). fill_in_ext_msg_extra()
140 // allows subclasses to append further information.
141 void fill_in_ext_msg(hrs_ext_msg* msg, const char* message);
142
|