| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
java_opcode as type for switch.
[op_wide]: Likewise.
(_Jv_BytecodeVerifier::verify_instructions_0): Likewise.
[op_invokevirtual]: Likewise.
* include/java-insns.h (java_opcode): Give enum a name.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47330 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
| |
case for boolean arrays.
* verify.cc (_Jv_BytecodeVerifier::compute_jump): Put PC into
error message.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47190 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
[op_lshl, op_lshr, op_lushr]: Shift argument is an int, not a
long.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47177 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
(_Jv_BytecodeVerifier::verify_instructions_0) [op_anewarray]:
Construct new array type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47165 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
Skip a short, not a byte.
[op_newarray]: Skip a byte, not a short.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47163 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
Added `B' case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47162 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
temporary values.
(_Jv_BytecodeVerifier::get_short): Likewise.
(_Jv_BytecodeVerifier::get_int): Likewise.
(_Jv_BytecodeVerifier::check_return_type): Reverse ordering of
`compatible' call.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47161 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
message.
(_Jv_BytecodeVerifier::pop64): Likewise.
(_Jv_BytecodeVerifier::pop32): Likewise.
(_Jv_BytecodeVerifier::pop_raw): Likewise.
(_Jv_BytecodeVerifier::pop_type): Promote the match type.
(type::set_initialized): Only modify uninitialized types.
(type::set_uninitialized): Fix shadowing bug. Simplify code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47158 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(verify_fail): Added pc argument. Use StringBuffer to construct
exception message.
(_Jv_BytecodeVerifier::verify_instructions_0): Put PC into error
message.
(_Jv_BytecodeVerifier::check_return_type): Likewise.
(_Jv_BytecodeVerifier::handle_field_or_method): Likewise.
(_Jv_BytecodeVerifier::check_constant): Likewise.
(_Jv_BytecodeVerifier::check_class_constant): Likewise.
(_Jv_BytecodeVerifier::check_pool_index): Likewise.
(_Jv_BytecodeVerifier::get_variable): Likewise.
(_Jv_BytecodeVerifier::branch_prepass): Likewise. Also, correctly
check exception handler endpoint.
(_Jv_BytecodeVerifier::verify_instructions_0): Correctly handle
wide arguments to current method.
(_Jv_BytecodeVerifier::check_wide_constant): New method.
(_Jv_BytecodeVerifier::verify_instructions_0) [op_ldc2_w]: Use
it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47155 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
case where field has primitive type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47112 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
| |
method.
(type::compatible): Use it.
(type::merge): Likewise.
(type::promote): Return a `type&'.
(get_one_type): Promote return value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47097 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
(type::merge): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47077 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
| |
[op_dup_x2]: Likewise.
[op_dup2_x1]: Likewise.
[op_dup2_x2]: Likewise.
(branch_prepass): Added `op_newarray' case. Updated unrecognized
instruction error.
(verify_instructions_0): Updated unrecognized instruction error.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47033 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46882 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46830 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
* Makefile.in: Rebuilt.
* Makefile.am (libgcj_la_SOURCES): Added verify.cc.
* verify.cc: New file.
* include/java-interp.h (_Jv_count_arguments): Declare.
(_Jv_VerifyMethod): Likewise.
(class _Jv_InterpMethod): Made _Jv_BytecodeVerifier a friend.
(class _Jv_InterpException): Likewise.
* resolve.cc (_Jv_count_arguments): Renamed from count_arguments.
No longer static. Updated callers.
* defineclass.cc (int_bits_to_float): Removed.
(long_bits_to_double): Likewise.
(prepare_pool_entry): Updated.
(handleCodeAttribute): Verify method (commented out for now).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46796 138bc75d-0d04-0410-961f-82ee72b054a4
|