comparison src/share/vm/graal/graalRuntime.hpp @ 16683:4d0d1dc5db00

introduce extra field to record when HotSpotGraalRuntime has been initialized to avoid spurious errors during VM shutdown for short lived applications
author Doug Simon <doug.simon@oracle.com>
date Mon, 04 Aug 2014 23:25:14 +0200
parents d3fec84757ed
children 11b22ccafccd
comparison
equal deleted inserted replaced
16682:63706366f6c5 16683:4d0d1dc5db00
30 30
31 class GraalRuntime: public CHeapObj<mtCompiler> { 31 class GraalRuntime: public CHeapObj<mtCompiler> {
32 private: 32 private:
33 33
34 static jobject _HotSpotGraalRuntime_instance; 34 static jobject _HotSpotGraalRuntime_instance;
35 static bool _HotSpotGraalRuntime_initialized;
35 static address _external_deopt_i2c_entry; 36 static address _external_deopt_i2c_entry;
36 static const char* _generated_sources_sha1; 37 static const char* _generated_sources_sha1;
37 38
38 /** 39 /**
39 * Reads the OptionValue object from a specified static field. 40 * Reads the OptionValue object from a specified static field.
109 110
110 public: 111 public:
111 112
112 static void initialize_natives(JNIEnv *env, jclass c2vmClass); 113 static void initialize_natives(JNIEnv *env, jclass c2vmClass);
113 114
114 static bool is_HotSpotGraalRuntime_initialized() { return _HotSpotGraalRuntime_instance != NULL; } 115 static bool is_HotSpotGraalRuntime_initialized() { return _HotSpotGraalRuntime_initialized; }
115 116
116 /** 117 /**
117 * Gets the singleton HotSpotGraalRuntime instance, initializing it if necessary 118 * Gets the singleton HotSpotGraalRuntime instance, initializing it if necessary
118 */ 119 */
119 static Handle get_HotSpotGraalRuntime(); 120 static Handle get_HotSpotGraalRuntime();