mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 15:24:43 +02:00
8296875: Generational ZGC: Refactor loom code
Co-authored-by: Stefan Karlsson <stefank@openjdk.org> Co-authored-by: Axel Boldt-Christmas <aboldtch@openjdk.org> Reviewed-by: stefank, rrich, pchilanomate
This commit is contained in:
parent
301cf52fa2
commit
be99e84c98
42 changed files with 752 additions and 339 deletions
|
@ -1382,6 +1382,17 @@ void JavaThread::oops_do_no_frames(OopClosure* f, CodeBlobClosure* cf) {
|
|||
if (jvmti_thread_state() != NULL) {
|
||||
jvmti_thread_state()->oops_do(f, cf);
|
||||
}
|
||||
|
||||
// The continuation oops are really on the stack. But there is typically at most
|
||||
// one of those per thread, so we handle them here in the oops_do_no_frames part
|
||||
// so that we don't have to sprinkle as many stack watermark checks where these
|
||||
// oops are used. We just need to make sure the thread has started processing.
|
||||
ContinuationEntry* entry = _cont_entry;
|
||||
while (entry != nullptr) {
|
||||
f->do_oop((oop*)entry->cont_addr());
|
||||
f->do_oop((oop*)entry->chunk_addr());
|
||||
entry = entry->parent();
|
||||
}
|
||||
}
|
||||
|
||||
void JavaThread::oops_do_frames(OopClosure* f, CodeBlobClosure* cf) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue