2003-10-22 Andrew Haley <aph@redhat.com>
* lang.c (LANG_HOOKS_GET_CALLEE_FNDECL): New.
(java_get_callee_fndecl): New.
* jcf-parse.c (java_parse_file): Call emit_catch_table().
* java-tree.h (ctable_decl): New.
(catch_classes): New.
(java_tree_index): Add JTI_CTABLE_DECL, JTI_CATCH_CLASSES.
* decl.c (java_init_decl_processing): Add catch_class_type.
Add ctable_decl.
Add catch_classes field.
* class.c (build_indirect_class_ref): Break out from
build_class_ref.
(make_field_value): Check flag_indirect_dispatch.
(make_class_data): Ditto.
Tidy uses of PUSH_FIELD_VALUE.
Add field catch_classes.
(make_catch_class_record): New.
* java-tree.h (PUSH_FIELD_VALUE): Tidy.
2003-10-22 Andrew Haley <aph@redhat.com>
* java/lang/natClass.cc (initializeClass): Call
_Jv_linkExceptionClassTable.
(_Jv_LinkSymbolTable): Call )_Jv_ThrowNoSuchMethodError. Call
_Jv_Defer_Resolution on a method whose ncode is NULL.
(_Jv_linkExceptionClassTable): New function.
(_Jv_LayoutVTableMethods): If superclass looks like a constant pool
entry, look it up.
* java/lang/Class.h (struct _Jv_CatchClass): New.
(_Jv_linkExceptionClassTable): New friend.
(_Jv_Defer_Resolution): New friend.
(class Class.catch_classes): New field.
* include/java-interp.h (Jv_Defer_Resolution): New method.
(_Jv_PrepareClass): Make a friend of _Jv_MethodBase.
(_Jv_MethodBase.deferred): New field.
(_Jv_Defer_Resolution): New function.
* resolve.cc (_Jv_PrepareClass): Resolve deferred handlers.
* exception.cc (get_ttype_entry): Change return type to void**.
(PERSONALITY_FUNCTION): Remove all code related to using a
Utf8Const* for a match type. Change match type to be a pointer to
a pointer, rather than a pointer to a Class.
* defineclass.cc (handleCodeAttribute): Initialize
method->deferred.
(handleMethodsEnd): Likewise.
From-SVN: r72886
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| ref | Loading commit data... | |
| reflect | Loading commit data... | |
| AbstractMethodError.java | Loading commit data... | |
| ArithmeticException.java | Loading commit data... | |
| ArrayIndexOutOfBoundsException.java | Loading commit data... | |
| ArrayStoreException.java | Loading commit data... | |
| AssertionError.java | Loading commit data... | |
| Boolean.java | Loading commit data... | |
| Byte.java | Loading commit data... | |
| CharSequence.java | Loading commit data... | |
| Character.java | Loading commit data... | |
| Class.h | Loading commit data... | |
| Class.java | Loading commit data... | |
| ClassCastException.java | Loading commit data... | |
| ClassCircularityError.java | Loading commit data... | |
| ClassFormatError.java | Loading commit data... | |
| ClassLoader.java | Loading commit data... | |
| ClassNotFoundException.java | Loading commit data... | |
| CloneNotSupportedException.java | Loading commit data... | |
| Cloneable.java | Loading commit data... | |
| Comparable.java | Loading commit data... | |
| Compiler.java | Loading commit data... | |
| Double.java | Loading commit data... | |
| EcosProcess.java | Loading commit data... | |
| Error.java | Loading commit data... | |
| Exception.java | Loading commit data... | |
| ExceptionInInitializerError.java | Loading commit data... | |
| Float.java | Loading commit data... | |
| IllegalAccessError.java | Loading commit data... | |
| IllegalAccessException.java | Loading commit data... | |
| IllegalArgumentException.java | Loading commit data... | |
| IllegalMonitorStateException.java | Loading commit data... | |
| IllegalStateException.java | Loading commit data... | |
| IllegalThreadStateException.java | Loading commit data... | |
| IncompatibleClassChangeError.java | Loading commit data... | |
| IndexOutOfBoundsException.java | Loading commit data... | |
| InheritableThreadLocal.java | Loading commit data... | |
| InstantiationError.java | Loading commit data... | |
| InstantiationException.java | Loading commit data... | |
| Integer.java | Loading commit data... | |
| InternalError.java | Loading commit data... | |
| InterruptedException.java | Loading commit data... | |
| LinkageError.java | Loading commit data... | |
| Long.java | Loading commit data... | |
| Math.java | Loading commit data... | |
| NegativeArraySizeException.java | Loading commit data... | |
| NoClassDefFoundError.java | Loading commit data... | |
| NoSuchFieldError.java | Loading commit data... | |
| NoSuchFieldException.java | Loading commit data... | |
| NoSuchMethodError.java | Loading commit data... | |
| NoSuchMethodException.java | Loading commit data... | |
| NullPointerException.java | Loading commit data... | |
| Number.java | Loading commit data... | |
| NumberFormatException.java | Loading commit data... | |
| Object.h | Loading commit data... | |
| Object.java | Loading commit data... | |
| OutOfMemoryError.java | Loading commit data... | |
| Package.java | Loading commit data... | |
| PosixProcess.java | Loading commit data... | |
| Process.java | Loading commit data... | |
| Runnable.java | Loading commit data... | |
| Runtime.java | Loading commit data... | |
| RuntimeException.java | Loading commit data... | |
| RuntimePermission.java | Loading commit data... | |
| SecurityException.java | Loading commit data... | |
| SecurityManager.java | Loading commit data... | |
| Short.java | Loading commit data... | |
| StackOverflowError.java | Loading commit data... | |
| StackTraceElement.java | Loading commit data... | |
| StrictMath.java | Loading commit data... | |
| String.java | Loading commit data... | |
| StringBuffer.java | Loading commit data... | |
| StringIndexOutOfBoundsException.java | Loading commit data... | |
| System.java | Loading commit data... | |
| Thread.java | Loading commit data... | |
| ThreadDeath.java | Loading commit data... | |
| ThreadGroup.java | Loading commit data... | |
| ThreadLocal.java | Loading commit data... | |
| Throwable.java | Loading commit data... | |
| UnknownError.java | Loading commit data... | |
| UnsatisfiedLinkError.java | Loading commit data... | |
| UnsupportedClassVersionError.java | Loading commit data... | |
| UnsupportedOperationException.java | Loading commit data... | |
| VMClassLoader.java | Loading commit data... | |
| VMSecurityManager.java | Loading commit data... | |
| VMThrowable.java | Loading commit data... | |
| VerifyError.java | Loading commit data... | |
| VirtualMachineError.java | Loading commit data... | |
| Void.java | Loading commit data... | |
| Win32Process.java | Loading commit data... | |
| dtoa.c | Loading commit data... | |
| e_acos.c | Loading commit data... | |
| e_asin.c | Loading commit data... | |
| e_atan2.c | Loading commit data... | |
| e_exp.c | Loading commit data... | |
| e_fmod.c | Loading commit data... | |
| e_log.c | Loading commit data... | |
| e_pow.c | Loading commit data... | |
| e_rem_pio2.c | Loading commit data... | |
| e_remainder.c | Loading commit data... | |
| e_scalb.c | Loading commit data... | |
| e_sqrt.c | Loading commit data... | |
| fdlibm.h | Loading commit data... | |
| ieeefp.h | Loading commit data... | |
| k_cos.c | Loading commit data... | |
| k_rem_pio2.c | Loading commit data... | |
| k_sin.c | Loading commit data... | |
| k_tan.c | Loading commit data... | |
| mprec.c | Loading commit data... | |
| mprec.h | Loading commit data... | |
| natCharacter.cc | Loading commit data... | |
| natClass.cc | Loading commit data... | |
| natClassLoader.cc | Loading commit data... | |
| natDouble.cc | Loading commit data... | |
| natEcosProcess.cc | Loading commit data... | |
| natFloat.cc | Loading commit data... | |
| natMath.cc | Loading commit data... | |
| natObject.cc | Loading commit data... | |
| natPosixProcess.cc | Loading commit data... | |
| natRuntime.cc | Loading commit data... | |
| natString.cc | Loading commit data... | |
| natStringBuffer.cc | Loading commit data... | |
| natSystem.cc | Loading commit data... | |
| natThread.cc | Loading commit data... | |
| natVMSecurityManager.cc | Loading commit data... | |
| natWin32Process.cc | Loading commit data... | |
| s_atan.c | Loading commit data... | |
| s_ceil.c | Loading commit data... | |
| s_copysign.c | Loading commit data... | |
| s_cos.c | Loading commit data... | |
| s_fabs.c | Loading commit data... | |
| s_floor.c | Loading commit data... | |
| s_rint.c | Loading commit data... | |
| s_scalbn.c | Loading commit data... | |
| s_sin.c | Loading commit data... | |
| s_tan.c | Loading commit data... | |
| sf_fabs.c | Loading commit data... | |
| sf_rint.c | Loading commit data... | |
| strtod.c | Loading commit data... | |
| w_acos.c | Loading commit data... | |
| w_asin.c | Loading commit data... | |
| w_atan2.c | Loading commit data... | |
| w_exp.c | Loading commit data... | |
| w_fmod.c | Loading commit data... | |
| w_log.c | Loading commit data... | |
| w_pow.c | Loading commit data... | |
| w_remainder.c | Loading commit data... | |
| w_sqrt.c | Loading commit data... |