comparison src/share/vm/code/nmethod.cpp @ 23426:682119c4c32e

8058737: CodeCache::find_blob fails with 'unsafe access to zombie method' Summary: Remove active ICStubs from zombie nmethods Reviewed-by: kvn, iveresov
author thartmann
date Thu, 08 Oct 2015 09:37:23 +0200
parents b12a2a9b05ca
children c1950f51ed60
comparison
equal deleted inserted replaced
23425:aa97f9321b9c 23426:682119c4c32e
1143 } 1143 }
1144 1144
1145 RelocIterator iter(this); 1145 RelocIterator iter(this);
1146 while (iter.next()) { 1146 while (iter.next()) {
1147 iter.reloc()->clear_inline_cache(); 1147 iter.reloc()->clear_inline_cache();
1148 }
1149 }
1150
1151 // Clear ICStubs of all compiled ICs
1152 void nmethod::clear_ic_stubs() {
1153 assert_locked_or_safepoint(CompiledIC_lock);
1154 RelocIterator iter(this);
1155 while(iter.next()) {
1156 if (iter.type() == relocInfo::virtual_call_type) {
1157 CompiledIC* ic = CompiledIC_at(&iter);
1158 ic->clear_ic_stub();
1159 }
1148 } 1160 }
1149 } 1161 }
1150 1162
1151 1163
1152 void nmethod::cleanup_inline_caches() { 1164 void nmethod::cleanup_inline_caches() {