< prev index next >

src/hotspot/share/c1/c1_CodeStubs.hpp

Print this page

529   ArrayCopyStub(LIR_OpArrayCopy* op): _op(op) { }
530 
531   LIR_Opr src() const                         { return _op->src(); }
532   LIR_Opr src_pos() const                     { return _op->src_pos(); }
533   LIR_Opr dst() const                         { return _op->dst(); }
534   LIR_Opr dst_pos() const                     { return _op->dst_pos(); }
535   LIR_Opr length() const                      { return _op->length(); }
536   LIR_Opr tmp() const                         { return _op->tmp(); }
537 
538   virtual void emit_code(LIR_Assembler* e);
539   virtual CodeEmitInfo* info() const          { return _op->info(); }
540   virtual void visit(LIR_OpVisitState* visitor) {
541     // don't pass in the code emit info since it's processed in the fast path
542     visitor->do_slow_case();
543   }
544 #ifndef PRODUCT
545   virtual void print_name(outputStream* out) const { out->print("ArrayCopyStub"); }
546 #endif // PRODUCT
547 };
548 



















549 #endif // SHARE_C1_C1_CODESTUBS_HPP

529   ArrayCopyStub(LIR_OpArrayCopy* op): _op(op) { }
530 
531   LIR_Opr src() const                         { return _op->src(); }
532   LIR_Opr src_pos() const                     { return _op->src_pos(); }
533   LIR_Opr dst() const                         { return _op->dst(); }
534   LIR_Opr dst_pos() const                     { return _op->dst_pos(); }
535   LIR_Opr length() const                      { return _op->length(); }
536   LIR_Opr tmp() const                         { return _op->tmp(); }
537 
538   virtual void emit_code(LIR_Assembler* e);
539   virtual CodeEmitInfo* info() const          { return _op->info(); }
540   virtual void visit(LIR_OpVisitState* visitor) {
541     // don't pass in the code emit info since it's processed in the fast path
542     visitor->do_slow_case();
543   }
544 #ifndef PRODUCT
545   virtual void print_name(outputStream* out) const { out->print("ArrayCopyStub"); }
546 #endif // PRODUCT
547 };
548 
549 class LoadKlassStub: public CodeStub {
550 private:
551   LIR_Opr          _obj;
552   LIR_Opr          _result;
553 
554 public:
555   LoadKlassStub(LIR_Opr obj, LIR_Opr result) :
556     CodeStub(), _obj(obj), _result(result) {};
557 
558   virtual void emit_code(LIR_Assembler* e);
559   virtual void visit(LIR_OpVisitState* visitor) {
560     visitor->do_input(_obj);
561     visitor->do_output(_result);
562   }
563 #ifndef PRODUCT
564 virtual void print_name(outputStream* out) const { out->print("LoadKlassStub"); }
565 #endif // PRODUCT
566 };
567 
568 #endif // SHARE_C1_C1_CODESTUBS_HPP
< prev index next >