equal
deleted
inserted
replaced
78 _CodeStubList::append(stub); |
78 _CodeStubList::append(stub); |
79 } |
79 } |
80 } |
80 } |
81 }; |
81 }; |
82 |
82 |
83 #ifdef TIERED |
|
84 class CounterOverflowStub: public CodeStub { |
83 class CounterOverflowStub: public CodeStub { |
85 private: |
84 private: |
86 CodeEmitInfo* _info; |
85 CodeEmitInfo* _info; |
87 int _bci; |
86 int _bci; |
|
87 LIR_Opr _method; |
88 |
88 |
89 public: |
89 public: |
90 CounterOverflowStub(CodeEmitInfo* info, int bci) : _info(info), _bci(bci) { |
90 CounterOverflowStub(CodeEmitInfo* info, int bci, LIR_Opr method) : _info(info), _bci(bci), _method(method) { |
91 } |
91 } |
92 |
92 |
93 virtual void emit_code(LIR_Assembler* e); |
93 virtual void emit_code(LIR_Assembler* e); |
94 |
94 |
95 virtual void visit(LIR_OpVisitState* visitor) { |
95 virtual void visit(LIR_OpVisitState* visitor) { |
96 visitor->do_slow_case(_info); |
96 visitor->do_slow_case(_info); |
|
97 visitor->do_input(_method); |
97 } |
98 } |
98 |
99 |
99 #ifndef PRODUCT |
100 #ifndef PRODUCT |
100 virtual void print_name(outputStream* out) const { out->print("CounterOverflowStub"); } |
101 virtual void print_name(outputStream* out) const { out->print("CounterOverflowStub"); } |
101 #endif // PRODUCT |
102 #endif // PRODUCT |
102 |
103 |
103 }; |
104 }; |
104 #endif // TIERED |
|
105 |
105 |
106 class ConversionStub: public CodeStub { |
106 class ConversionStub: public CodeStub { |
107 private: |
107 private: |
108 Bytecodes::Code _bytecode; |
108 Bytecodes::Code _bytecode; |
109 LIR_Opr _input; |
109 LIR_Opr _input; |