comparison src/share/vm/opto/parse.hpp @ 3939:f6f3bb0ee072

7088955: add C2 IR support to the SA Reviewed-by: kvn
author never
date Sun, 11 Sep 2011 14:48:24 -0700
parents a32de5085326
children 8f6ce6f1049b
comparison
equal deleted inserted replaced
3938:e6b1331a51d2 3939:f6f3bb0ee072
39 class SwitchRange; 39 class SwitchRange;
40 40
41 41
42 //------------------------------InlineTree------------------------------------- 42 //------------------------------InlineTree-------------------------------------
43 class InlineTree : public ResourceObj { 43 class InlineTree : public ResourceObj {
44 friend class VMStructs;
45
44 Compile* C; // cache 46 Compile* C; // cache
45 JVMState* _caller_jvms; // state of caller 47 JVMState* _caller_jvms; // state of caller
46 ciMethod* _method; // method being called by the caller_jvms 48 ciMethod* _method; // method being called by the caller_jvms
47 InlineTree* _caller_tree; 49 InlineTree* _caller_tree;
48 uint _count_inline_bcs; // Accumulated count of inlined bytecodes 50 uint _count_inline_bcs; // Accumulated count of inlined bytecodes
52 const float _site_invoke_ratio; 54 const float _site_invoke_ratio;
53 const int _max_inline_level; // the maximum inline level for this sub-tree (may be adjusted) 55 const int _max_inline_level; // the maximum inline level for this sub-tree (may be adjusted)
54 float compute_callee_frequency( int caller_bci ) const; 56 float compute_callee_frequency( int caller_bci ) const;
55 57
56 GrowableArray<InlineTree*> _subtrees; 58 GrowableArray<InlineTree*> _subtrees;
57 friend class Compile; 59
60 void print_impl(outputStream* stj, int indent) const PRODUCT_RETURN;
58 61
59 protected: 62 protected:
60 InlineTree(Compile* C, 63 InlineTree(Compile* C,
61 const InlineTree* caller_tree, 64 const InlineTree* caller_tree,
62 ciMethod* callee_method, 65 ciMethod* callee_method,
119 public: 122 public:
120 // Debug information collected during parse 123 // Debug information collected during parse
121 uint count_inlines() const { return _count_inlines; }; 124 uint count_inlines() const { return _count_inlines; };
122 #endif 125 #endif
123 GrowableArray<InlineTree*> subtrees() { return _subtrees; } 126 GrowableArray<InlineTree*> subtrees() { return _subtrees; }
127
128 void print_value_on(outputStream* st) const PRODUCT_RETURN;
124 }; 129 };
125 130
126 131
127 //----------------------------------------------------------------------------- 132 //-----------------------------------------------------------------------------
128 //------------------------------Parse------------------------------------------ 133 //------------------------------Parse------------------------------------------