comparison src/share/vm/graal/graalRuntime.hpp @ 15603:b7fb36e57da8

made Graal initialization be driven from Java to simplify sequencing and synchronization
author Doug Simon <doug.simon@oracle.com>
date Mon, 12 May 2014 23:27:07 +0200
parents ddb3ef30fcd2
children fe608a56e3f7
comparison
equal deleted inserted replaced
15602:c73df62cbaee 15603:b7fb36e57da8
31 class GraalRuntime: public CHeapObj<mtCompiler> { 31 class GraalRuntime: public CHeapObj<mtCompiler> {
32 private: 32 private:
33 33
34 static address _external_deopt_i2c_entry; 34 static address _external_deopt_i2c_entry;
35 35
36 enum State { uninitialized, initializing, initialized };
37 static volatile State _state;
38 static Thread* _initializingThread;
39 static bool should_perform_init();
40
41 public: 36 public:
42 37
43 static /*synchronized*/ void initialize(); 38 static void initialize_natives(JNIEnv *env, jclass c2vmClass);
44 static BufferBlob* initialize_buffer_blob(); 39 static BufferBlob* initialize_buffer_blob();
45 static BasicType kindToBasicType(jchar ch); 40 static BasicType kindToBasicType(jchar ch);
46 static address create_external_deopt_i2c(); 41 static address create_external_deopt_i2c();
47 static address get_external_deopt_i2c_entry() {return _external_deopt_i2c_entry;} 42 static address get_external_deopt_i2c_entry() {return _external_deopt_i2c_entry;}
48 43