diff options
author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-11-20 05:16:17 +0000 |
---|---|---|
committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-11-20 05:16:17 +0000 |
commit | fa4f8d1b8d5a9be58ba7cf44bc8ced97d3cbb98c (patch) | |
tree | 1bd751761493eb1379756b97207d8372f8a3cc32 /libjava/verify.cc | |
parent | c2465d5d17360f3dbc66eb3b99def7d2762ca9a9 (diff) | |
download | gcc-fa4f8d1b8d5a9be58ba7cf44bc8ced97d3cbb98c.tar.gz |
* verify.cc (_Jv_BytecodeVerifier::branch_prepass) [op_iinc]:
Uses two operand bytes, not one.
[op_arraylength]: Has no operands in bytecode.
(_Jv_BytecodeVerifier::push_jump): Fixed call to
check_no_uninitialized_objects.
(_Jv_BytecodeVerifier::push_exception_jump): Likewise.
(_Jv_BytecodeVerifier::handle_ret_insn): Likewise.
(_Jv_BytecodeVerifier::handle_jsr_insn): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47202 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/verify.cc')
-rw-r--r-- | libjava/verify.cc | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/libjava/verify.cc b/libjava/verify.cc index b9571c4b870..7226a93ca12 100644 --- a/libjava/verify.cc +++ b/libjava/verify.cc @@ -1037,13 +1037,13 @@ private: { int npc = compute_jump (offset); if (npc < PC) - current_state->check_no_uninitialized_objects (current_method->max_stack); + current_state->check_no_uninitialized_objects (current_method->max_locals); push_jump_merge (npc, current_state); } void push_exception_jump (type t, int pc) { - current_state->check_no_uninitialized_objects (current_method->max_stack, + current_state->check_no_uninitialized_objects (current_method->max_locals, true); state s (current_state, current_method->max_stack, current_method->max_locals); @@ -1114,7 +1114,7 @@ private: // in the enclosing context. current_state->subroutine = get_subroutine (subr->pc); if (subr->pc < PC) - current_state->check_no_uninitialized_objects (current_method->max_stack); + current_state->check_no_uninitialized_objects (current_method->max_locals); push_jump_merge (subr->pc, current_state, true); } @@ -1139,7 +1139,7 @@ private: int npc = compute_jump (offset); if (npc < PC) - current_state->check_no_uninitialized_objects (current_method->max_stack); + current_state->check_no_uninitialized_objects (current_method->max_locals); check_nonrecursive_call (current_state->subroutine, npc); // Temporarily modify the current state so that it looks like we are @@ -1344,7 +1344,6 @@ private: case op_lneg: case op_fneg: case op_dneg: - case op_iinc: case op_i2l: case op_i2f: case op_i2d: @@ -1371,6 +1370,7 @@ private: case op_areturn: case op_return: case op_athrow: + case op_arraylength: break; case op_bipush: @@ -1385,12 +1385,12 @@ private: case op_fstore: case op_dstore: case op_astore: - case op_arraylength: case op_ret: case op_newarray: get_byte (); break; + case op_iinc: case op_sipush: case op_ldc_w: case op_ldc2_w: |