195 if (!_narrow_oop_shift_initialized) {
196 _narrow_oop_shift = _config->_narrowOopShift;
197 if (UseCompressedClassPointers) { // It is set only if UseCompressedOops is set
198 _narrow_klass_shift = _config->_narrowKlassShift;
199 }
200 _narrow_oop_shift_initialized = true;
201 } else {
202 verify_flag(_config->_narrowOopShift, _narrow_oop_shift, "aot_config->_narrowOopShift");
203 if (UseCompressedClassPointers) { // It is set only if UseCompressedOops is set
204 verify_flag(_config->_narrowKlassShift, _narrow_klass_shift, "aot_config->_narrowKlassShift");
205 }
206 }
207 }
208 }
209
210 AOTLib::~AOTLib() {
211 os::free((void*) _name);
212 }
213
214 AOTCodeHeap::~AOTCodeHeap() {
215 if (_classes != NULL) {
216 FREE_C_HEAP_ARRAY(AOTClass, _classes);
217 }
218 if (_code_to_aot != NULL) {
219 FREE_C_HEAP_ARRAY(CodeToAMethod, _code_to_aot);
220 }
221 }
222
223 AOTLib::AOTLib(void* handle, const char* name, int dso_id) : _valid(true), _dl_handle(handle), _dso_id(dso_id) {
224 _name = (const char*) os::strdup(name);
225
226 // Verify that VM runs with the same parameters as AOT tool.
227 _config = (AOTConfiguration*) load_symbol("A.config");
228 _header = (AOTHeader*) load_symbol("A.header");
229
230 verify_config();
231
232 if (!_valid && PrintAOT) {
233 tty->print("%7d ", (int) tty->time_stamp().milliseconds());
234 tty->print_cr("%4d skipped %s aot library", _dso_id, _name);
235 }
236 }
237
238 AOTCodeHeap::AOTCodeHeap(AOTLib* lib) :
239 CodeHeap("CodeHeap 'AOT'", CodeBlobType::AOT), _lib(lib), _classes(NULL), _code_to_aot(NULL) {
240 assert(_lib->is_valid(), "invalid library");
|
195 if (!_narrow_oop_shift_initialized) {
196 _narrow_oop_shift = _config->_narrowOopShift;
197 if (UseCompressedClassPointers) { // It is set only if UseCompressedOops is set
198 _narrow_klass_shift = _config->_narrowKlassShift;
199 }
200 _narrow_oop_shift_initialized = true;
201 } else {
202 verify_flag(_config->_narrowOopShift, _narrow_oop_shift, "aot_config->_narrowOopShift");
203 if (UseCompressedClassPointers) { // It is set only if UseCompressedOops is set
204 verify_flag(_config->_narrowKlassShift, _narrow_klass_shift, "aot_config->_narrowKlassShift");
205 }
206 }
207 }
208 }
209
210 AOTLib::~AOTLib() {
211 os::free((void*) _name);
212 }
213
214 AOTCodeHeap::~AOTCodeHeap() {
215 FREE_C_HEAP_ARRAY(AOTClass, _classes);
216 FREE_C_HEAP_ARRAY(CodeToAMethod, _code_to_aot);
217 }
218
219 AOTLib::AOTLib(void* handle, const char* name, int dso_id) : _valid(true), _dl_handle(handle), _dso_id(dso_id) {
220 _name = (const char*) os::strdup(name);
221
222 // Verify that VM runs with the same parameters as AOT tool.
223 _config = (AOTConfiguration*) load_symbol("A.config");
224 _header = (AOTHeader*) load_symbol("A.header");
225
226 verify_config();
227
228 if (!_valid && PrintAOT) {
229 tty->print("%7d ", (int) tty->time_stamp().milliseconds());
230 tty->print_cr("%4d skipped %s aot library", _dso_id, _name);
231 }
232 }
233
234 AOTCodeHeap::AOTCodeHeap(AOTLib* lib) :
235 CodeHeap("CodeHeap 'AOT'", CodeBlobType::AOT), _lib(lib), _classes(NULL), _code_to_aot(NULL) {
236 assert(_lib->is_valid(), "invalid library");
|