286 void copy_stackmap_data(ClassLoaderData* loader_data, u1* sd, int length, TRAPS); |
286 void copy_stackmap_data(ClassLoaderData* loader_data, u1* sd, int length, TRAPS); |
287 bool has_stackmap_table() const { return _stackmap_data != NULL; } |
287 bool has_stackmap_table() const { return _stackmap_data != NULL; } |
288 |
288 |
289 // adapter |
289 // adapter |
290 void set_adapter_entry(AdapterHandlerEntry* adapter) { |
290 void set_adapter_entry(AdapterHandlerEntry* adapter) { |
291 assert(!is_shared(), "shared methods have fixed adapter_trampoline"); |
291 assert(!is_shared(), |
|
292 "shared methods in archive have fixed adapter_trampoline"); |
292 _adapter = adapter; |
293 _adapter = adapter; |
293 } |
294 } |
294 void set_adapter_trampoline(AdapterHandlerEntry** trampoline) { |
295 void set_adapter_trampoline(AdapterHandlerEntry** trampoline) { |
295 assert(DumpSharedSpaces, "must be"); |
296 assert(DumpSharedSpaces || DynamicDumpSharedSpaces, "must be"); |
296 assert(*trampoline == NULL, "must be NULL during dump time, to be initialized at run time"); |
297 if (DumpSharedSpaces) { |
|
298 assert(*trampoline == NULL, |
|
299 "must be NULL during dump time, to be initialized at run time"); |
|
300 } |
297 _adapter_trampoline = trampoline; |
301 _adapter_trampoline = trampoline; |
298 } |
302 } |
299 void update_adapter_trampoline(AdapterHandlerEntry* adapter) { |
303 void update_adapter_trampoline(AdapterHandlerEntry* adapter) { |
300 assert(is_shared(), "must be"); |
304 assert(is_shared(), "must be"); |
301 *_adapter_trampoline = adapter; |
305 *_adapter_trampoline = adapter; |