< prev index next >
src/hotspot/share/c1/c1_CodeStubs.hpp
Print this page
*** 229,238 ****
--- 229,261 ----
#ifndef PRODUCT
virtual void print_name(outputStream* out) const { out->print("ImplicitNullCheckStub"); }
#endif // PRODUCT
};
+ class LoadFlattenedArrayStub: public CodeStub {
+ private:
+ LIR_Opr _array;
+ LIR_Opr _index;
+ LIR_Opr _result;
+ CodeEmitInfo* _info;
+
+ public:
+ LoadFlattenedArrayStub(LIR_Opr array, LIR_Opr index, LIR_Opr result, CodeEmitInfo* info);
+ virtual void emit_code(LIR_Assembler* e);
+ virtual CodeEmitInfo* info() const { return _info; }
+ virtual void visit(LIR_OpVisitState* visitor) {
+ visitor->do_slow_case(_info);
+ visitor->do_input(_array);
+ visitor->do_input(_index);
+ visitor->do_output(_result);
+ }
+ #ifndef PRODUCT
+ virtual void print_name(outputStream* out) const { out->print("LoadFlattenedArrayStub"); }
+ #endif // PRODUCT
+ };
+
+
class NewInstanceStub: public CodeStub {
private:
ciInstanceKlass* _klass;
LIR_Opr _klass_reg;
< prev index next >