< prev index next >

src/hotspot/share/c1/c1_Instruction.hpp

Print this page


 488 #endif
 489     return set_next(next);
 490   }
 491 
 492   // when blocks are merged
 493   void fixup_block_pointers() {
 494     Instruction *cur = next()->next(); // next()'s block is set in set_next
 495     while (cur && cur->_block != block()) {
 496       cur->_block = block();
 497       cur = cur->next();
 498     }
 499   }
 500 
 501   Instruction *insert_after(Instruction *i) {
 502     Instruction* n = _next;
 503     set_next(i);
 504     i->set_next(n);
 505     return _next;
 506   }
 507 
 508   bool is_flattened_array() const;



 509 
 510   Instruction *insert_after_same_bci(Instruction *i) {
 511 #ifndef PRODUCT
 512     i->set_printable_bci(printable_bci());
 513 #endif
 514     return insert_after(i);
 515   }
 516 
 517   void set_subst(Instruction* subst)             {
 518     assert(subst == NULL ||
 519            type()->base() == subst->type()->base() ||
 520            subst->type()->base() == illegalType, "type can't change");
 521     _subst = subst;
 522   }
 523   void set_exception_handlers(XHandlers *xhandlers) { _exception_handlers = xhandlers; }
 524   void set_exception_state(ValueStack* s)        { check_state(s); _exception_state = s; }
 525   void set_state_before(ValueStack* s)           { check_state(s); _state_before = s; }
 526 
 527   // machine-specifics
 528   void set_operand(LIR_Opr operand)              { assert(operand != LIR_OprFact::illegalOpr, "operand must exist"); _operand = operand; }




 488 #endif
 489     return set_next(next);
 490   }
 491 
 492   // when blocks are merged
 493   void fixup_block_pointers() {
 494     Instruction *cur = next()->next(); // next()'s block is set in set_next
 495     while (cur && cur->_block != block()) {
 496       cur->_block = block();
 497       cur = cur->next();
 498     }
 499   }
 500 
 501   Instruction *insert_after(Instruction *i) {
 502     Instruction* n = _next;
 503     set_next(i);
 504     i->set_next(n);
 505     return _next;
 506   }
 507 
 508   bool is_flattened_array() const;             // FIXME -- remove it
 509 
 510   bool is_loaded_flattened_array() const;
 511   bool maybe_flattened_array() const;
 512   
 513   Instruction *insert_after_same_bci(Instruction *i) {
 514 #ifndef PRODUCT
 515     i->set_printable_bci(printable_bci());
 516 #endif
 517     return insert_after(i);
 518   }
 519 
 520   void set_subst(Instruction* subst)             {
 521     assert(subst == NULL ||
 522            type()->base() == subst->type()->base() ||
 523            subst->type()->base() == illegalType, "type can't change");
 524     _subst = subst;
 525   }
 526   void set_exception_handlers(XHandlers *xhandlers) { _exception_handlers = xhandlers; }
 527   void set_exception_state(ValueStack* s)        { check_state(s); _exception_state = s; }
 528   void set_state_before(ValueStack* s)           { check_state(s); _state_before = s; }
 529 
 530   // machine-specifics
 531   void set_operand(LIR_Opr operand)              { assert(operand != LIR_OprFact::illegalOpr, "operand must exist"); _operand = operand; }


< prev index next >