equal
deleted
inserted
replaced
300 friend class UseCountComputer; |
300 friend class UseCountComputer; |
301 friend class BlockBegin; |
301 friend class BlockBegin; |
302 |
302 |
303 void update_exception_state(ValueStack* state); |
303 void update_exception_state(ValueStack* state); |
304 |
304 |
305 bool has_printable_bci() const { return NOT_PRODUCT(_printable_bci != -99) PRODUCT_ONLY(false); } |
|
306 |
|
307 protected: |
305 protected: |
308 void set_type(ValueType* type) { |
306 void set_type(ValueType* type) { |
309 assert(type != NULL, "type must exist"); |
307 assert(type != NULL, "type must exist"); |
310 _type = type; |
308 _type = type; |
311 } |
309 } |
390 } |
388 } |
391 |
389 |
392 // accessors |
390 // accessors |
393 int id() const { return _id; } |
391 int id() const { return _id; } |
394 #ifndef PRODUCT |
392 #ifndef PRODUCT |
|
393 bool has_printable_bci() const { return _printable_bci != -99; } |
395 int printable_bci() const { assert(has_printable_bci(), "_printable_bci should have been set"); return _printable_bci; } |
394 int printable_bci() const { assert(has_printable_bci(), "_printable_bci should have been set"); return _printable_bci; } |
396 void set_printable_bci(int bci) { NOT_PRODUCT(_printable_bci = bci;) } |
395 void set_printable_bci(int bci) { _printable_bci = bci; } |
397 #endif |
396 #endif |
398 int use_count() const { return _use_count; } |
397 int use_count() const { return _use_count; } |
399 int pin_state() const { return _pin_state; } |
398 int pin_state() const { return _pin_state; } |
400 bool is_pinned() const { return _pin_state != 0 || PinAllInstructions; } |
399 bool is_pinned() const { return _pin_state != 0 || PinAllInstructions; } |
401 ValueType* type() const { return _type; } |
400 ValueType* type() const { return _type; } |
574 : Instruction(type->base()) |
573 : Instruction(type->base()) |
575 , _pf_flags(0) |
574 , _pf_flags(0) |
576 , _block(b) |
575 , _block(b) |
577 , _index(index) |
576 , _index(index) |
578 { |
577 { |
|
578 NOT_PRODUCT(set_printable_bci(Value(b)->printable_bci())); |
579 if (type->is_illegal()) { |
579 if (type->is_illegal()) { |
580 make_illegal(); |
580 make_illegal(); |
581 } |
581 } |
582 } |
582 } |
583 |
583 |
629 // creation |
629 // creation |
630 Local(ciType* declared, ValueType* type, int index) |
630 Local(ciType* declared, ValueType* type, int index) |
631 : Instruction(type) |
631 : Instruction(type) |
632 , _java_index(index) |
632 , _java_index(index) |
633 , _declared_type(declared) |
633 , _declared_type(declared) |
634 {} |
634 { |
|
635 NOT_PRODUCT(set_printable_bci(-1)); |
|
636 } |
635 |
637 |
636 // accessors |
638 // accessors |
637 int java_index() const { return _java_index; } |
639 int java_index() const { return _java_index; } |
638 |
640 |
639 ciType* declared_type() const { return _declared_type; } |
641 ciType* declared_type() const { return _declared_type; } |