849 fall_through = false;
850 break;
851 }
852 case Bytecodes::_ireturn:
853 case Bytecodes::_freturn:
854 state.spop();
855 fall_through = false;
856 break;
857 case Bytecodes::_lreturn:
858 case Bytecodes::_dreturn:
859 state.lpop();
860 fall_through = false;
861 break;
862 case Bytecodes::_areturn:
863 case Bytecodes::_vreturn:
864 set_returned(state.apop());
865 fall_through = false;
866 break;
867 case Bytecodes::_getstatic:
868 case Bytecodes::_getfield:
869 case Bytecodes::_vgetfield:
870 { bool ignored_will_link;
871 ciField* field = s.get_field(ignored_will_link);
872 BasicType field_type = field->type()->basic_type();
873 if (s.cur_bc() != Bytecodes::_getstatic) {
874 set_method_escape(state.apop());
875 }
876 if (field_type == T_OBJECT || field_type == T_ARRAY) {
877 state.apush(unknown_obj);
878 } else if (type2size[field_type] == 1) {
879 state.spush();
880 } else {
881 state.lpush();
882 }
883 }
884 break;
885 case Bytecodes::_putstatic:
886 case Bytecodes::_putfield:
887 { bool will_link;
888 ciField* field = s.get_field(will_link);
889 BasicType field_type = field->type()->basic_type();
|
849 fall_through = false;
850 break;
851 }
852 case Bytecodes::_ireturn:
853 case Bytecodes::_freturn:
854 state.spop();
855 fall_through = false;
856 break;
857 case Bytecodes::_lreturn:
858 case Bytecodes::_dreturn:
859 state.lpop();
860 fall_through = false;
861 break;
862 case Bytecodes::_areturn:
863 case Bytecodes::_vreturn:
864 set_returned(state.apop());
865 fall_through = false;
866 break;
867 case Bytecodes::_getstatic:
868 case Bytecodes::_getfield:
869 { bool ignored_will_link;
870 ciField* field = s.get_field(ignored_will_link);
871 BasicType field_type = field->type()->basic_type();
872 if (s.cur_bc() != Bytecodes::_getstatic) {
873 set_method_escape(state.apop());
874 }
875 if (field_type == T_OBJECT || field_type == T_ARRAY) {
876 state.apush(unknown_obj);
877 } else if (type2size[field_type] == 1) {
878 state.spush();
879 } else {
880 state.lpush();
881 }
882 }
883 break;
884 case Bytecodes::_putstatic:
885 case Bytecodes::_putfield:
886 { bool will_link;
887 ciField* field = s.get_field(will_link);
888 BasicType field_type = field->type()->basic_type();
|