26 #define SHARE_VM_OPTO_C2COMPILER_HPP |
26 #define SHARE_VM_OPTO_C2COMPILER_HPP |
27 |
27 |
28 #include "compiler/abstractCompiler.hpp" |
28 #include "compiler/abstractCompiler.hpp" |
29 |
29 |
30 class C2Compiler : public AbstractCompiler { |
30 class C2Compiler : public AbstractCompiler { |
31 private: |
31 private: |
32 |
32 static bool init_c2_runtime(); |
33 static void initialize_runtime(); |
|
34 |
33 |
35 public: |
34 public: |
36 // Name |
35 // Name |
37 const char *name() { return "C2"; } |
36 const char *name() { return "C2"; } |
38 |
37 |
39 static volatile int _runtimes; |
|
40 |
|
41 #ifdef TIERED |
38 #ifdef TIERED |
42 virtual bool is_c2() { return true; }; |
39 virtual bool is_c2() { return true; }; |
43 #endif // TIERED |
40 #endif // TIERED |
44 |
|
45 // Customization |
|
46 bool needs_adapters () { return true; } |
|
47 bool needs_stubs () { return true; } |
|
48 |
41 |
49 void initialize(); |
42 void initialize(); |
50 |
43 |
51 // Compilation entry point for methods |
44 // Compilation entry point for methods |
52 void compile_method(ciEnv* env, |
45 void compile_method(ciEnv* env, |