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);