8098573: Compiler accesses to shared archive fail if archive is remapped
Summary: Change ciEnv::~ciEnv() to remove symbols in VM state.
Reviewed-by: kvn, dholmes
--- a/hotspot/src/share/vm/ci/ciEnv.cpp Mon Jul 11 19:15:21 2016 +0000
+++ b/hotspot/src/share/vm/ci/ciEnv.cpp Tue Jul 12 10:16:36 2016 +0200
@@ -204,11 +204,13 @@
}
ciEnv::~ciEnv() {
- CompilerThread* current_thread = CompilerThread::current();
- _factory->remove_symbols();
- // Need safepoint to clear the env on the thread. RedefineClasses might
- // be reading it.
- GUARDED_VM_ENTRY(current_thread->set_env(NULL);)
+ GUARDED_VM_ENTRY(
+ CompilerThread* current_thread = CompilerThread::current();
+ _factory->remove_symbols();
+ // Need safepoint to clear the env on the thread. RedefineClasses might
+ // be reading it.
+ current_thread->set_env(NULL);
+ )
}
// ------------------------------------------------------------------