Mercurial > hg > graal-compiler
comparison src/share/vm/c1/c1_Compiler.hpp @ 12880:469216acdb28
8023014: CodeSweeperSweepNoFlushTest.java fails with HS crash
Summary: Ensure ensure correct initialization of compiler runtime
Reviewed-by: kvn, twisti
author | anoll |
---|---|
date | Thu, 10 Oct 2013 15:44:12 +0200 |
parents | 01e51113b4f5 |
children | de6a9e811145 |
comparison
equal
deleted
inserted
replaced
12876:8b80b262e501 | 12880:469216acdb28 |
---|---|
28 #include "compiler/abstractCompiler.hpp" | 28 #include "compiler/abstractCompiler.hpp" |
29 | 29 |
30 // There is one instance of the Compiler per CompilerThread. | 30 // There is one instance of the Compiler per CompilerThread. |
31 | 31 |
32 class Compiler: public AbstractCompiler { | 32 class Compiler: public AbstractCompiler { |
33 | |
34 private: | 33 private: |
35 | 34 static void init_c1_runtime(); |
36 // Tracks whether runtime has been initialized | 35 BufferBlob* init_buffer_blob(); |
37 static volatile int _runtimes; | |
38 | 36 |
39 public: | 37 public: |
40 // Creation | 38 // Creation |
41 Compiler(); | 39 Compiler(); |
42 ~Compiler(); | 40 ~Compiler(); |
44 // Name of this compiler | 42 // Name of this compiler |
45 virtual const char* name() { return "C1"; } | 43 virtual const char* name() { return "C1"; } |
46 | 44 |
47 virtual bool is_c1() { return true; }; | 45 virtual bool is_c1() { return true; }; |
48 | 46 |
49 BufferBlob* get_buffer_blob(ciEnv* env); | |
50 | |
51 // Missing feature tests | 47 // Missing feature tests |
52 virtual bool supports_native() { return true; } | 48 virtual bool supports_native() { return true; } |
53 virtual bool supports_osr () { return true; } | 49 virtual bool supports_osr () { return true; } |
54 | 50 |
55 // Customization | |
56 virtual bool needs_adapters () { return false; } | |
57 virtual bool needs_stubs () { return false; } | |
58 | |
59 // Initialization | 51 // Initialization |
60 virtual void initialize(); | 52 virtual void initialize(); |
61 static void initialize_all(); | |
62 | 53 |
63 // Compilation entry point for methods | 54 // Compilation entry point for methods |
64 virtual void compile_method(ciEnv* env, ciMethod* target, int entry_bci); | 55 virtual void compile_method(ciEnv* env, ciMethod* target, int entry_bci); |
65 | 56 |
66 // Print compilation timers and statistics | 57 // Print compilation timers and statistics |