equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * |
4 * |
5 * This code is free software; you can redistribute it and/or modify it |
5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as |
6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. |
7 * published by the Free Software Foundation. |
28 #include "gc/shared/allocTracer.hpp" |
28 #include "gc/shared/allocTracer.hpp" |
29 #include "gc/shared/gcId.hpp" |
29 #include "gc/shared/gcId.hpp" |
30 #include "gc/shared/gcLocker.inline.hpp" |
30 #include "gc/shared/gcLocker.inline.hpp" |
31 #include "gc/shared/genCollectedHeap.hpp" |
31 #include "gc/shared/genCollectedHeap.hpp" |
32 #include "gc/shared/vmGCOperations.hpp" |
32 #include "gc/shared/vmGCOperations.hpp" |
|
33 #include "interpreter/oopMapCache.hpp" |
33 #include "logging/log.hpp" |
34 #include "logging/log.hpp" |
34 #include "memory/oopFactory.hpp" |
35 #include "memory/oopFactory.hpp" |
35 #include "runtime/handles.inline.hpp" |
36 #include "runtime/handles.inline.hpp" |
36 #include "runtime/init.hpp" |
37 #include "runtime/init.hpp" |
37 #include "runtime/interfaceSupport.hpp" |
38 #include "runtime/interfaceSupport.hpp" |
109 } |
110 } |
110 |
111 |
111 |
112 |
112 void VM_GC_Operation::doit_epilogue() { |
113 void VM_GC_Operation::doit_epilogue() { |
113 assert(Thread::current()->is_Java_thread(), "just checking"); |
114 assert(Thread::current()->is_Java_thread(), "just checking"); |
|
115 // Clean up old interpreter OopMap entries that were replaced |
|
116 // during the GC thread root traversal. |
|
117 OopMapCache::cleanup_old_entries(); |
114 if (Universe::has_reference_pending_list()) { |
118 if (Universe::has_reference_pending_list()) { |
115 Heap_lock->notify_all(); |
119 Heap_lock->notify_all(); |
116 } |
120 } |
117 Heap_lock->unlock(); |
121 Heap_lock->unlock(); |
118 } |
122 } |