135 // to "true" iff some code got unloaded.
136 static void do_unloading(BoolObjectClosure* is_alive, bool unloading_occurred);
137 static void asserted_non_scavengable_nmethods_do(CodeBlobClosure* f = NULL) PRODUCT_RETURN;
138 static void scavenge_root_nmethods_do(CodeBlobClosure* f);
139
140 static nmethod* scavenge_root_nmethods() { return _scavenge_root_nmethods; }
141 static void set_scavenge_root_nmethods(nmethod* nm) { _scavenge_root_nmethods = nm; }
142 static void add_scavenge_root_nmethod(nmethod* nm);
143 static void drop_scavenge_root_nmethod(nmethod* nm);
144 static void prune_scavenge_root_nmethods();
145
146 // Printing/debugging
147 static void print(); // prints summary
148 static void print_internals();
149 static void print_memory_overhead();
150 static void verify(); // verifies the code cache
151 static void print_trace(const char* event, CodeBlob* cb, int size = 0) PRODUCT_RETURN;
152 static void print_summary(outputStream* st, bool detailed = true); // Prints a summary of the code cache usage
153 static void log_state(outputStream* st);
154
155 // The full limits of the codeCache
156 static address low_bound() { return (address) _heap->low_boundary(); }
157 static address high_bound() { return (address) _heap->high_boundary(); }
158 static address high() { return (address) _heap->high(); }
159
160 // Profiling
161 static address first_address(); // first address used for CodeBlobs
162 static address last_address(); // last address used for CodeBlobs
163 static size_t capacity() { return _heap->capacity(); }
164 static size_t max_capacity() { return _heap->max_capacity(); }
165 static size_t unallocated_capacity() { return _heap->unallocated_capacity(); }
166 static double reverse_free_ratio();
167
168 static bool needs_cache_clean() { return _needs_cache_clean; }
169 static void set_needs_cache_clean(bool v) { _needs_cache_clean = v; }
170 static void clear_inline_caches(); // clear all inline caches
171
172 static void verify_clean_inline_caches();
173 static void verify_icholder_relocations();
174
|
135 // to "true" iff some code got unloaded.
136 static void do_unloading(BoolObjectClosure* is_alive, bool unloading_occurred);
137 static void asserted_non_scavengable_nmethods_do(CodeBlobClosure* f = NULL) PRODUCT_RETURN;
138 static void scavenge_root_nmethods_do(CodeBlobClosure* f);
139
140 static nmethod* scavenge_root_nmethods() { return _scavenge_root_nmethods; }
141 static void set_scavenge_root_nmethods(nmethod* nm) { _scavenge_root_nmethods = nm; }
142 static void add_scavenge_root_nmethod(nmethod* nm);
143 static void drop_scavenge_root_nmethod(nmethod* nm);
144 static void prune_scavenge_root_nmethods();
145
146 // Printing/debugging
147 static void print(); // prints summary
148 static void print_internals();
149 static void print_memory_overhead();
150 static void verify(); // verifies the code cache
151 static void print_trace(const char* event, CodeBlob* cb, int size = 0) PRODUCT_RETURN;
152 static void print_summary(outputStream* st, bool detailed = true); // Prints a summary of the code cache usage
153 static void log_state(outputStream* st);
154
155 // Dcmd
156 static void print_codelist(outputStream* st);
157 static void print_layout(outputStream* st);
158
159 // The full limits of the codeCache
160 static address low_bound() { return (address) _heap->low_boundary(); }
161 static address high_bound() { return (address) _heap->high_boundary(); }
162 static address high() { return (address) _heap->high(); }
163
164 // Profiling
165 static address first_address(); // first address used for CodeBlobs
166 static address last_address(); // last address used for CodeBlobs
167 static size_t capacity() { return _heap->capacity(); }
168 static size_t max_capacity() { return _heap->max_capacity(); }
169 static size_t unallocated_capacity() { return _heap->unallocated_capacity(); }
170 static double reverse_free_ratio();
171
172 static bool needs_cache_clean() { return _needs_cache_clean; }
173 static void set_needs_cache_clean(bool v) { _needs_cache_clean = v; }
174 static void clear_inline_caches(); // clear all inline caches
175
176 static void verify_clean_inline_caches();
177 static void verify_icholder_relocations();
178
|