Mercurial > hg > truffle
comparison src/share/vm/graal/graalCompiler.hpp @ 5129:51111665eda6
Support for recording a leaf graph id for each deoptimization point in the debug info.
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Wed, 21 Mar 2012 10:47:02 +0100 |
parents | 6e7c1fb1980f |
children | 70f715dfbb41 |
comparison
equal
deleted
inserted
replaced
5128:e2da6471a9a1 | 5129:51111665eda6 |
---|---|
21 * questions. | 21 * questions. |
22 */ | 22 */ |
23 | 23 |
24 #include "compiler/abstractCompiler.hpp" | 24 #include "compiler/abstractCompiler.hpp" |
25 | 25 |
26 #define LEAF_GRAPH_ARRAY_SIZE (8192) | |
27 | |
26 class GraalCompiler : public AbstractCompiler { | 28 class GraalCompiler : public AbstractCompiler { |
27 | 29 |
28 private: | 30 private: |
29 | 31 |
30 bool _initialized; | 32 bool _initialized; |
31 | 33 |
32 static GraalCompiler* _instance; | 34 static GraalCompiler* _instance; |
35 | |
36 jlong _deopted_leaf_graphs[LEAF_GRAPH_ARRAY_SIZE]; | |
37 int _deopted_leaf_graph_count; | |
33 | 38 |
34 public: | 39 public: |
35 | 40 |
36 GraalCompiler(); | 41 GraalCompiler(); |
37 | 42 |
53 | 58 |
54 // Compilation entry point for methods | 59 // Compilation entry point for methods |
55 virtual void compile_method(ciEnv* env, ciMethod* target, int entry_bci); | 60 virtual void compile_method(ciEnv* env, ciMethod* target, int entry_bci); |
56 | 61 |
57 void compile_method(methodHandle target, int entry_bci, jboolean blocking); | 62 void compile_method(methodHandle target, int entry_bci, jboolean blocking); |
63 | |
64 void deopt_leaf_graph(jlong leaf_graph_id); | |
65 oop dump_deopted_leaf_graphs(TRAPS); | |
58 | 66 |
59 // Print compilation timers and statistics | 67 // Print compilation timers and statistics |
60 virtual void print_timers(); | 68 virtual void print_timers(); |
61 | 69 |
62 static Handle get_RiTypeFromSignature(constantPoolHandle cp, int index, KlassHandle accessor, TRAPS); | 70 static Handle get_RiTypeFromSignature(constantPoolHandle cp, int index, KlassHandle accessor, TRAPS); |