Mercurial > hg > truffle
comparison src/share/vm/oops/constantPool.cpp @ 7185:90273fc0a981
8000662: NPG: nashorn ant clean test262 out-of-memory with Java heap
Summary: Add ClassLoaderData object for each anonymous class with metaspaces to allocate in.
Reviewed-by: twisti, jrose, stefank
author | coleenp |
---|---|
date | Thu, 29 Nov 2012 16:50:29 -0500 |
parents | 18fb7da42534 |
children | 291ffc492eb6 b14da2e6f2dc |
comparison
equal
deleted
inserted
replaced
7181:2fc0334f613a | 7185:90273fc0a981 |
---|---|
338 MonitorLockerEx ml(this_oop->lock()); | 338 MonitorLockerEx ml(this_oop->lock()); |
339 // Only updated constant pool - if it is resolved. | 339 // Only updated constant pool - if it is resolved. |
340 do_resolve = this_oop->tag_at(which).is_unresolved_klass(); | 340 do_resolve = this_oop->tag_at(which).is_unresolved_klass(); |
341 if (do_resolve) { | 341 if (do_resolve) { |
342 ClassLoaderData* this_key = this_oop->pool_holder()->class_loader_data(); | 342 ClassLoaderData* this_key = this_oop->pool_holder()->class_loader_data(); |
343 if (!this_key->is_the_null_class_loader_data()) { | 343 this_key->record_dependency(k(), CHECK_NULL); // Can throw OOM |
344 this_key->record_dependency(k(), CHECK_NULL); // Can throw OOM | |
345 } | |
346 this_oop->klass_at_put(which, k()); | 344 this_oop->klass_at_put(which, k()); |
347 } | 345 } |
348 } | 346 } |
349 } | 347 } |
350 | 348 |