530 void do_putstatic() { do_field_access(false, false); } |
530 void do_putstatic() { do_field_access(false, false); } |
531 void do_putfield () { do_field_access(false, true); } |
531 void do_putfield () { do_field_access(false, true); } |
532 |
532 |
533 // common code for making initial checks and forming addresses |
533 // common code for making initial checks and forming addresses |
534 void do_field_access(bool is_get, bool is_field); |
534 void do_field_access(bool is_get, bool is_field); |
535 bool static_field_ok_in_clinit(ciField *field, ciMethod *method); |
|
536 |
535 |
537 // common code for actually performing the load or store |
536 // common code for actually performing the load or store |
538 void do_get_xxx(Node* obj, ciField* field, bool is_field); |
537 void do_get_xxx(Node* obj, ciField* field, bool is_field); |
539 void do_put_xxx(Node* obj, ciField* field, bool is_field); |
538 void do_put_xxx(Node* obj, ciField* field, bool is_field); |
540 |
539 |
541 // implementation of object creation bytecodes |
540 // implementation of object creation bytecodes |
542 void emit_guard_for_new(ciInstanceKlass* klass); |
|
543 void do_new(); |
541 void do_new(); |
544 void do_newarray(BasicType elemtype); |
542 void do_newarray(BasicType elemtype); |
545 void do_anewarray(); |
543 void do_anewarray(); |
546 void do_multianewarray(); |
544 void do_multianewarray(); |
547 Node* expand_multianewarray(ciArrayKlass* array_klass, Node* *lengths, int ndimensions, int nargs); |
545 Node* expand_multianewarray(ciArrayKlass* array_klass, Node* *lengths, int ndimensions, int nargs); |