2000-03-05 Anthony Green <green@redhat.com>
* libjava.lang/PR141.java: New file.
* libjava.lang/PR141.out: New file.
For PR java.io/141.
From-SVN: r32352
* libjava.jni/virtual.java: New file.
* libjava.jni/virtual.c: New file.
* libjava.jni/virtual.out: New file.
* libjava.jni/final_method.java: New file.
* libjava.jni/final_method.c: New file.
* libjava.jni/final_method.out: New file.
* libjava.jni/overload.java: New file.
* libjava.jni/overload.c: New file.
* libjava.jni/overload.out: New file.
* libjava.jni/simple_int.java: New file.
* libjava.jni/simple_int.c: New file.
* libjava.jni/simple_int.out: New file.
* libjava.jni/invoke.out: New file.
* libjava.jni/invoke.c: New file.
* libjava.jni/invoke.java: New file.
From-SVN: r31996
2000-02-12 Alexandre Petit-Bianco <apbianco@cygnus.com>
* libjava.lang/inner_interface.out: New file.
* libjava.lang/inner_interface.java: New file.
* libjava.lang/final_int.out: New file.
* libjava.lang/final_int.java: New file.
* libjava.lang/final_static_and_friend.out: New file.
* libjava.lang/final_static_and_friend.java: New file.
From-SVN: r31944
* libjava.lang/instinit2.out: New file.
* libjava.lang/instinit2.java: New file.
* libjava.lang/instinit.out: New file.
* libjava.lang/instinit.java: New file.
* libjava.lang/anonarray2.out: New file.
* libjava.lang/anonarray2.java: New file.
* libjava.lang/anonarray.out: New file.
* libjava.lang/anonarray.java: New file.
* libjava.lang/nested_with_ctor.out: New file.
* libjava.lang/nested_with_ctor.java: New file.
* libjava.lang/anfi.out: New file.
* libjava.lang/anfi.java: New file.
* libjava.lang/stub.out: New file.
* libjava.lang/stub.java: New file.
From-SVN: r31841
* libjava.lang/pr83.out: New file.
* libjava.lang/pr83.java: New file.
* libjava.lang/pr109.out: New file.
* libjava.lang/pr109.java: New file.
From-SVN: r31446
2000-01-04 Tom Tromey <tromey@cygnus.com>
* java/lang/reflect/natConstructor.cc (newInstance): Pass
declaring class as return_type argument to
_Jv_CallNonvirtualMethodA.
* java/lang/reflect/natMethod.cc (_Jv_CallNonvirtualMethodA): In
constructor case, create object and use it as `this' argument.
* java/lang/Class.h (_getConstructors): Declare.
(_getFields): Declare.
* java/lang/Class.java (getConstructors): Wrote.
(_getConstructors): New native method.
(getDeclaredConstructors): Wrote.
(_getFields): Declare new native method.
* java/lang/natClass.cc (_Jv_LookupInterfaceMethod): Removed
incorrect comment.
(getMethod): Work correctly when class is primitive.
(getDeclaredMethods): Likewise. Compute offset using `method',
not `mptr'.
(getDeclaredMethod): Likewise.
(getConstructor): Wrote.
(ConstructorClass): New define.
(getDeclaredConstructor): Wrote.
(_getConstructors): New method.
(_getFields): New method.
(getFields): Wrote.
* Makefile.in: Rebuilt.
* Makefile.am (AM_CXXFLAGS): Added -D_GNU_SOURCE.
* prims.cc: Remove `#pragma implementation'.
* gcj/array.h: Remove `#pragma interface'.
* prims.cc (_Jv_equaln): New function.
* java/lang/Class.java (getSignature): Declare.
* resolve.cc (_Jv_LookupDeclaredMethod): Moved to natClass.cc.
* java/lang/natClass.cc (_Jv_LookupDeclaredMethod): Moved from
resolve.cc.
(getSignature): New method.
(getDeclaredMethod): Wrote.
(getMethod): Wrote.
Include StringBuffer.h.
* java/lang/Class.h (Class): Added _Jv_FromReflectedConstructor
as a friend. Unconditionally declare _Jv_LookupDeclaredMethod as
a friend.
(getSignature): Declare.
* include/jvm.h (_Jv_GetTypesFromSignature): Declare.
(_Jv_equaln): Declare.
(_Jv_CallNonvirtualMethodA): Declare.
* Makefile.in: Rebuilt.
* Makefile.am (nat_source_files): Added natConstructor.cc.
(java/lang/reflect/Constructor.h): New target.
* java/lang/reflect/natConstructor.cc: New file.
* java/lang/reflect/Constructor.java (newInstance): Now native.
(declaringClass): Renamed from decl_class.
(offset): Renamed from index.
(getType): New native method.
(getModifiers): Now native.
(getParameterTypes): Call getType if required.
(hashCode): Include hash code from declaring class.
(modifiers): Removed.
(toString): Call getType if required.
* gcj/method.h (_Jv_FromReflectedConstructor): New function.
* java/lang/reflect/natMethod.cc (hack_call): New method.
Removed `#if 0' around FFI code.
Include <gnu/gcj/RawData.h>.
(invoke): Use _Jv_CallNonvirtualMethodA. Throw
IllegalArgumentException when argument object and class disagree.
(_Jv_GetTypesFromSignature): New function.
(getType): Use it.
(ObjectClass): New define.
(_Jv_CallNonvirtualMethodA): New function.
* java/lang/reflect/Method.java (hack_trampoline): New method.
(hack_call): New native method.
1999-12-21 Per Bothner <per@bothner.com>
* java/lang/natClass.cc (getDeclaredMethods): Correctly compute
offset in new Method.
From-SVN: r31199
1999-10-19 Bryce McKinlay <bryce@albatross.co.nz>
* libjava.compile/invokeinterface: New directory.
* libjava.compile/invokeinterface/Test.java: New file. Test code for
PR gcj/71 and PR gcj/72.
* libjava.compile/invokeinterface/A.java: New file.
* libjava.compile/invokeinterface/B.java: New file.
From-SVN: r30094
* include/posix-threads.h (PTHREAD_MUTEX_IS_STRUCT): New define.
(_Jv_PthreadGetMutex): Use it.
(_Jv_PthreadCheckMonitor): Use new M_COUNT macros.
(_Jv_MutexInit): Use PTHREAD_MUTEX_IS_STRUCT.
(_Jv_MutexLock): Likewise.
(_Jv_MutexUnlock): Likewise.
* include/config.h.in: Rebuilt.
* acconfig.h (PTHREAD_MUTEX_HAVE_M_COUNT,
PTHREAD_MUTEX_HAVE___M_COUNT): New undefs.
* configure: Rebuilt.
* libgcj.spec.in: Don't mention INTERPSPEC.
* configure.in (INTERPSPEC): Removed.
Only run pthreads-related checks when using POSIX threads. Check
for m_count and __m_count in mutex structure.
From-SVN: r29048
* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Renamed
from _Jv_InternClassStrings.
* prims.cc (_Jv_RunMain): New function.
(JvRunMain): Remove gij-support.
* gij.cc (main): Use _Jv_RunMain.
* java/util/zip/ZipFile.java: Call readDirectory in constructor.
* interpret.cc (PUSHA, PUSHI, PUSHF, PUSHL, PUSHD): Don't store
argument in temp variable.
(continue1): For all op_x2y insns, use temp variable for
intermediate value. Also remove some comments.
* java/lang/natClass.cc (newInstance): Call _Jv_InitClass.
(forName): Don't call _Jv_InitClass.
* java/lang/Class.java (getResource,getResourceAsStream): Implement.
* java/util/zip/ZipEntry.java (ZipEntry(ZipEntry)): New construcor.
* java/util/jar/JarInputStream.java: New file.
* java/util/jar/JarEntry.java: New file.
* java/util/jar/JarFile.java: New file.
* java/net/URLClassLoader.java: New file.
* java/net/JarURLConnection.java: New file.
* gnu/gcj/protocol/jar/Handler.java: New file.
* gnu/gcj/protocol/jar/Connection.java: New file.
* java/security/SecureClassLoader.java: New file.
* java/lang/ClassLoader.java (parent): New variable.
(ClassLoader (ClassLoader)): new constructor.
(findClass): New method.
(loadClass): Add default 1.2 implementation.
(getSystemResourceAsBytes, getResourceAsBytes): Removed.
(readfully): Removed.
* gnu/gcj/runtime/VMClassLoader.java: Moved from java/lang.
(findSystemClass): New method.
(VMClassLoader): Constructor rewritten.
(init): New method.
All other methods removed.
* java/lang/natClassLoader.cc: Change use of java::lang::VMClassLoader
to gnu::gcj::runtime::VMClassLoader.
(_Jv_InternClassStrings): Use _Jv_ResolvePoolEntry. Also handle
class entries.
(VMClassLoader::findSystemClass): renamed from findBootClass.
* Makefile.am: Add new files.
(FirstThread.h, ThreadGroup.h): Add _Jv_Main friend.
* Makefile.in: Rebuilt.
From-SVN: r28748
1999-07-31 Alexandre Oliva <oliva@dcc.unicamp.br>
* lib/libjava.exp (bytecompile_file): Use `env(SUN_JAVAC)', that
defaults to javac, as Sun-javac compiler or compatible.
(libjava_init): Get GCJ from environment if neither GCJ_UNDER_TEST
nor TOOL_EXECUTABLE are set. Set `original_ld_library_path' from
environment.
(libjava_arguments): Prepend `.' and `$srcdir/$subdir' to
CLASSPATH, for `support' sources. Search for libgcj.spec in
`$objdir/..', by adding -B to GCJ_UNDER_TEST. Append
original_ld_library_path to ld_library_path.
* libjava.mauve/mauve.exp (test_mauve): Set `env(GCJ)' from
GCJ_UNDER_TEST, calculated just like in libjava.exp.
From-SVN: r28364
* libjava.compile/G19990217_02.no-link: New file.
* libjava.compile/test.exp: Look for `.no-link' file.
* lib/libjava.exp (test_libjava_from_source): Added `no-link'
option.
(test_libjava_from_javac): Likewise. Also, handle package
information from class name when creating class file name.
From-SVN: r28113
* libjava.lang/test.exp: New file.
* libjava.lang/err9.out: New file.
* libjava.lang/err9.java: New file.
* libjava.lang/err8.out: New file.
* libjava.lang/err8.java: New file.
* libjava.lang/err7.out: New file.
* libjava.lang/err7.java: New file.
* libjava.lang/err6.out: New file.
* libjava.lang/err6.java: New file.
* libjava.lang/err5.out: New file.
* libjava.lang/err5.java: New file.
* libjava.lang/err4.out: New file.
* libjava.lang/err4.java: New file.
* libjava.lang/err3.out: New file.
* libjava.lang/err3.java: New file.
* libjava.lang/err2.out: New file.
* libjava.lang/err2.java: New file.
* libjava.lang/err13.out: New file.
* libjava.lang/err13.java: New file.
* libjava.lang/err12.out: New file.
* libjava.lang/err12.java: New file.
* libjava.lang/err11.out: New file.
* libjava.lang/err11.java: New file.
* libjava.lang/err10.out: New file.
* libjava.lang/err10.java: New file.
* libjava.lang/err1.out: New file.
* libjava.lang/err1.java: New file.
* libjava.lang/N19990310_5.out: New file.
* libjava.lang/N19990310_5.java: New file.
* libjava.lang/N19990310_4.out: New file.
* libjava.lang/N19990310_4.java: New file.
* libjava.lang/N19990310_3.out: New file.
* libjava.lang/N19990310_3.java: New file.
* libjava.lang/N19990310_02.out: New file.
* libjava.lang/N19990310_02.java: New file.
* libjava.lang/G19990303_02.out: New file.
* libjava.lang/G19990303_02.java: New file.
* libjava.lang/G19990303_01.out: New file.
* libjava.lang/G19990303_01.java: New file.
* libjava.lang/G19990302_02.out: New file.
* libjava.lang/G19990302_02.java: New file.
* libjava.lang/G19990301_01.out: New file.
* libjava.lang/G19990301_01.java: New file.
* libjava.compile/N19990317.java: New file.
* libjava.compile/N19990310_01.java: New file.
* libjava.compile/G19990225_01.java: New file.
* libjava.compile/G19990217_02.java: New file.
* libjava.compile/G19990217_01.java: New file.
* libjava.compile/G19990210_3.java: New file.
* libjava.compile/G19990210_2.java: New file.
* libjava.compile/G19990210_1.java: New file.
From-SVN: r28087