Commit Graph

1710 Commits

Author SHA1 Message Date
Tom Tromey
0c1fcb02b1 Win32Process.java: Added comment.
* java/lang/Win32Process.java: Added comment.
	* include/posix.h (_Jv_platform_close_on_exec): New function.
	Include fcntl.h.
	* include/win32.h (_Jv_platform_close_on_exec): New function.
	* java/net/natPlainSocketImpl.cc (create): Set close-on-exec
	flag.
	(accept): Likewise.
	* java/net/natPlainDatagramSocketImpl.cc (create): Set
	close-on-exec flag.
	* java/io/natFileDescriptorPosix.cc (open): Set close-on-exec
	flag.

From-SVN: r50536
2002-03-10 17:59:23 +00:00
Tom Tromey
621fba999d verify.cc (state::NO_STACK): New constant.
* verify.cc (state::NO_STACK): New constant.
	(state::is_unmerged_ret_state): Handle case where stacktop is
	NO_STACK.
	(state::merge): Handle NO_STACK merges.
	(handle_jsr_insn): Invalidate PC, and use special NO_STACK state
	for instruction following jsr.
	(stacktop, stackdepth): Removed unused variables.
	(pop_jump): Ignore case where all remaining states are skipped.

From-SVN: r50526
2002-03-10 04:50:21 +00:00
Bryce McKinlay
2c59df9935 ImageMediaEntry: Removed.
* java/awt/ImageMediaEntry: Removed.
	* java/awt/MediaEntry: Removed.

From-SVN: r50524
2002-03-10 03:56:38 +00:00
Bryce McKinlay
4559716751 Hashtable synchronization for PowerPC.
libjava:
	Hashtable synchronization for PowerPC.
	* configure.in: Define SLOW_PTHREAD_SELF if configure.host set
	slow_pthread_self. Set up symlink for sysdeps directory.
	* configure: Rebuild.
	* configure.host: Document more shell variables. Set sysdeps_dir
	for most platforms. Set slow_pthread_self for i686. Set
	enable_hash_synchronization_default and slow_pthread_self for PowerPC.
	* posix-threads.cc (_Jv_ThreadSelf_out_of_line): Use release_set so
	that memory barrier is emitted where required.
	* prims.cc: 64-bit align static primitive class instances.
	* include/posix-threads.h (_Jv_ThreadSelf for SLOW_PTHREAD_SELF): Add
	read_barrier() to enforce ordering of reads.
	* sysdep/powerpc/locks.h: New file. Implementation of synchronization
	primitives for PowerPC.
	* sysdep/i386/locks.h: New file. Synchronization primitives for i386
	moved from natObject.cc.
	* sysdep/alpha/locks.h: Likewise.
	* sysdep/ia64/locks.h: Likewise.
	* sysdep/generic/locks.h: Likewise.
	* java/lang/natObject.cc: Move thread synchronization primitives to
	system-dependent headers.
gcc/java:
	* decl.c (java_init_decl_processing): Make sure class_type_node
	alignment is not less than 64 bits if hash synchronization isenabled.

boehm-gc:
	* include/gc_priv.h: Define ALIGN_DOUBLE on 32 bit targets if GCJ
	support is enabled, for hash synchronization.

From-SVN: r50523
2002-03-10 03:53:16 +00:00
Adam Megacz
828c1ddccc natFileDescriptorWin32.cc (read): Return -1 if zero bytes read and no failure code returned.
2002-03-09  Adam Megacz  <adam@xwt.org>

        * java/io/natFileDescriptorWin32.cc (read): Return -1 if zero
        bytes read and no failure code returned.

From-SVN: r50519
2002-03-10 03:34:27 +00:00
Bryce McKinlay
aa7543832a configure.in: Define SLOW_PTHREAD_SELF if configure.host set slow_pthread_self.
libjava:
	* configure.in: Define SLOW_PTHREAD_SELF if configure.host set
	slow_pthread_self. Set up symlink for sysdeps directory.
	* configure.host: Document more shell variables. Set sysdeps_dir
	for most platforms. Set slow_pthread_self for i686. Set
	enable_hash_synchronization_default and slow_pthread_self for PowerPC.
	* posix-threads.cc (_Jv_ThreadSelf_out_of_line): Use release_set so
	that memory barrier is emitted where required.
	* include/posix-threads.h (_Jv_ThreadSelf for SLOW_PTHREAD_SELF): Add
	read_barrier() to enforce ordering of reads.
	* sysdep/powerpc/locks.h: New file. Implementation of synchronization
	primitives for PowerPC.
	* sysdep/i386/locks.h: New file. Synchronization primitives for i386
	moved from natObject.cc.
	* sysdep/alpha/locks.h: Likewise.
	* sysdep/ia64/locks.h: Likewise.
	* sysdep/generic/locks.h: Likewise.
	* java/lang/natObject.cc: Move thread synchronization primitives to
	system-dependent headers.

gcc/java:
	* decl.c (java_init_decl_processing): Make sure class_type_node
	alignment is not less than 64 bits if hash synchronization is enabled.

boehm-gc:
	* include/gc_priv.h: Define ALIGN_DOUBLE on 32 bit targets if GCJ
	support is enabled, for hash synchronization.

[[Split portion of a mixed commit.]]

From-SVN: r50518.2
2002-03-10 03:31:08 +00:00
Adam Megacz
9268f1c0a6 2002-03-09 Adam Megacz <adam@xwt.org>
* win32.cc (_CRT_MT, __mingwthr_key_dtor) Added fake
        definitions to simulate -mthreads.

From-SVN: r50515
2002-03-09 22:33:49 +00:00
Adam Megacz
bb0774f330 2002-03-09 Adam Megacz <adam@xwt.org>
* win32.cc (_Jv_platform_gettimeofday) Cast 1000 to long long to
        avoid precision loss.

From-SVN: r50511
2002-03-09 22:08:35 +00:00
Per Bothner
c314ee353b * gnu/gcj/xlib/WindowAttributes.java Assign null to RawData, not 0.
* gnu/gcj/xlib/XImage.java:  Likewise.
	* gnu/gcj/xlib/XColor.java:  Likewise.

From-SVN: r50498
2002-03-09 08:25:13 -08:00
Adam Megacz
abfabb9850 Win32Process.java (ConcreteProcess): Now throws an IOException so that Throwable.printStackTrace fails correctly.
2002-03-09  Adam Megacz  <adam@xwt.org>

        * java/lang/Win32Process.java (ConcreteProcess): Now throws an
        IOException so that Throwable.printStackTrace fails correctly.

From-SVN: r50488
2002-03-09 08:47:40 +00:00
Adam Megacz
0bf93ed48a natPlainSocketImpl.cc (read, [...]): Formatting fixed.
2002-03-08  Adam Megacz  <adam@xwt.org>

        * java/net/natPlainSocketImpl.cc (read, write, close): Formatting
        fixed.

From-SVN: r50481
2002-03-09 07:56:55 +00:00
Bryce McKinlay
f1148658f1 posix.cc (_Jv_platform_gettimeofday): Make sure result doesn't get truncated to int.
* posix.cc (_Jv_platform_gettimeofday): Make sure result doesn't get
        truncated to int.

From-SVN: r50479
2002-03-09 05:48:38 +00:00
Tom Tromey
de3adb3d9c * include/jni.h: Include stdio.h.
From-SVN: r50457
2002-03-08 21:37:46 +00:00
Tom Tromey
7258310ad8 posix.cc (internal_gettimeofday): New function.
* posix.cc (internal_gettimeofday): New function.
	(_Jv_select): Use it.

From-SVN: r50442
2002-03-08 16:31:28 +00:00
Adam Megacz
4e00202772 natPlainSocketImpl.cc: Changed USE_WINSOCK to WIN32, and added thunks for read(), write(), and close().
2002-03-07  Adam Megacz  <adam@xwt.org>

        * java/net/natPlainSocketImpl.cc: Changed USE_WINSOCK to
        WIN32, and added thunks for read(), write(), and close().
        * java/net/natPlainSocketImpl.cc (accept, read, read):
        Disabled timeouts on WIN32 pending discussion.

From-SVN: r50418
2002-03-08 01:46:34 +00:00
Adam Megacz
8eeda6e0e7 win32.cc (_Jv_platform_gettimeofday): Now takes no args, returns jlong.
2002-03-07  Adam Megacz  <adam@xwt.org>

        * win32.cc (_Jv_platform_gettimeofday): Now takes no args,
        returns jlong. Added implementation
        * posix.cc (_Jv_platform_gettimeofday): Now takes no args,
        returns jlong.
        * win32.h (_Jv_platform_gettimeofday): Now takes no args,
        returns jlong.
        * posix.h (_Jv_platform_gettimeofday): Now takes no args,
        returns jlong.
        * java/lang/natSystem.cc (currentTimeMillis): Now uses updated
        _Jv_platform_gettimeofday signature.

From-SVN: r50416
2002-03-08 01:03:56 +00:00
Bryce McKinlay
a72f7227af natPlainSocketImpl.cc (_Jv_recv): Removed.
* java/net/natPlainSocketImpl.cc (_Jv_recv): Removed.
	(read): Call recv() directly, not _Jv_recv().

From-SVN: r50391
2002-03-07 01:53:21 +00:00
Tom Tromey
51532731d1 natFileDescriptorEcos.cc (init): Don't use GetStdHandle.
* java/io/natFileDescriptorEcos.cc (init): Don't use
	GetStdHandle.
	* java/io/natFileDescriptorPosix.cc (valid): Don't call stat if FD
	is negative.
	(init): Don't use GetStdHandle.

From-SVN: r50383
2002-03-06 23:23:34 +00:00
Tom Tromey
fd7852b37a config.h.in: Rebuilt.
* include/config.h.in: Rebuilt.
	* configure: Rebuilt.
	* Makefile.in: Rebuilt.

From-SVN: r50381
2002-03-06 23:11:18 +00:00
Adam Megacz
348c9efcd3 FileDescriptor.java: Initialize in/out/err in init().
2002-03-06  Adam Megacz  <adam@xwt.org>

        * java/io/FileDescriptor.java: Initialize in/out/err in init().
        * java/io/natFileDescriptorWin32.cc (init()): Added function.
        * java/io/natFileDescriptorPosix.cc (init()): Added function.
        * java/io/natFileDescriptorEcos.cc (init()): Added function.

From-SVN: r50378
2002-03-06 22:37:26 +00:00
Eric Blake
380ff1ef9d Fix ChangeLog date typo
From-SVN: r50371
2002-03-06 19:15:09 +00:00
Eric Blake
1fa782725c unicode-decomp.pl: Move from chartables.pl...
2002-03-04  Eric Blake  <ebb9@email.byu.edu>

	* scripts/unicode-decomp.pl: Move from chartables.pl, and remove
	the code for generating include/java-chartables.h.
	* scripts/unicode-blocks.pl: Move from scripts/blocks.pl, and
	merge with Classpath.
	* scripts/unicode-muncher.pl: Copy from Classpath.
	* scritps/MakeCharTables.java: New file.
	* gnu/gcj/convert/Blocks-3.txt: New file.
	* gnu/gcj/convert/UnicodeData-3.0.0.txt: New file.
	* gnu/gcj/convert/UnicodeCharacterDatabase-3.0.0.html: New file.
	* gnu/java/lang/CharData.java: Copy from Classpath.
	* Makefile.am (ordinary_java_source_files): Add
	gnu/java/lang/CharData.java.
	* configure.in: Remove --enable-fast-character option.
	* java/lang/Character.java: Merge algorithms and Javadoc with
	Classpath.
	* java/lang/natCharacter.cc: Implement Unicode lookup table more
	efficiently.
	* include/java-chardecomp.h: Regenerate.
	* include/java-chartables.h: Regenerate.

From-SVN: r50368
2002-03-06 18:54:45 +00:00
Bryce McKinlay
f095bbfc5b MediaTracker.java: Implemented.
* java/awt/MediaTracker.java: Implemented.
        * Makefile.am: Add MediaTracker.
        * Makefile.in: Rebuilt.

From-SVN: r50349
2002-03-06 08:11:06 +00:00
Tom Tromey
355526af2b natPosixProcess.cc (fail): Removed.
* java/lang/natPosixProcess.cc (fail): Removed.
	(startProcess): Simplified error-handling.  Preserve
	LD_LIBRARY_PATH across exec.

From-SVN: r50342
2002-03-06 05:13:58 +00:00
Tom Tromey
6901a00903 jni.cc (_Jv_LookupJNIMethod): Throw UnsatisfiedLinkError, not AbstractMethodError.
* jni.cc (_Jv_LookupJNIMethod): Throw UnsatisfiedLinkError, not
	AbstractMethodError.

From-SVN: r50337
2002-03-05 22:36:11 +00:00
Bryce McKinlay
224c488894 Remove cvs junk
From-SVN: r50271
2002-03-04 01:01:08 +00:00
Bryce McKinlay
bc24faf863 Makefile.am: Use -bootclasspath, not -CLASSPATH.
* Makefile.am: Use -bootclasspath, not -CLASSPATH.
	* Makefile.in: Rebuilt.

From-SVN: r50270
2002-03-04 01:00:16 +00:00
Mark Wielaard
de2467532d * java/util/Timer (TaskQueue.stop): set elements to zero.
From-SVN: r50254
2002-03-03 11:02:04 +00:00
Anthony Green
b41a6f95b4 Oops. A ChangeLog entry got committed prematurely with my last change.
This fixes is.

From-SVN: r50196
2002-03-01 13:43:09 +00:00
Anthony Green
562ff1637f Add pointer support to the reflection code.
From-SVN: r50180
2002-03-01 05:36:31 +00:00
Adam Megacz
d627547118 natInetAddress.cc: Changed USE_WINSOCK to WIN32, added '#undef STRICT'.
2002-02-27  Adam Megacz <adam@xwt.org>

        * java/net/natInetAddress.cc: Changed USE_WINSOCK to WIN32, added
        '#undef STRICT'.

From-SVN: r50120
2002-02-28 01:03:37 +00:00
Tom Tromey
fc04b455f9 natSystem.cc (init_properties): Use __VERSION__.
* java/lang/natSystem.cc (init_properties): Use __VERSION__.
	* gij.cc (version): Use __VERSION__.
	* include/config.h.in: Rebuilt.
	* acconfig.h (GCJVERSION): Removed.
	* configure: Rebuilt.
	* configure.in (GCJVERSION): Removed.

From-SVN: r50088
2002-02-27 05:32:29 +00:00
Andreas Schwab
7d2c4fe1e1 acinclude.m4 (LIB_AC_PROG_CXX): Use glibjava_CXX instead of glibcpp_CXX, since libjava uses even another CXX.
2002-02-26  Andreas Schwab  <schwab@suse.de>

	* acinclude.m4 (LIB_AC_PROG_CXX): Use glibjava_CXX instead of
	glibcpp_CXX, since libjava uses even another CXX.
	* aclocal.m4, configure: Regenerated.

From-SVN: r50084
2002-02-27 02:18:09 +00:00
Tom Tromey
7fe4a89aed natPosixProcess.cc (startProcess): Use FD_CLOEXEC, not `1'.
* java/lang/natPosixProcess.cc (startProcess): Use FD_CLOEXEC, not
	`1'.

From-SVN: r50081
2002-02-27 01:39:30 +00:00
Bryce McKinlay
f36bcb2d6b Makefile.am (GCJCOMPILE): Use -fCLASSPATH not -fclasspath.
* Makefile.am (GCJCOMPILE): Use -fCLASSPATH not -fclasspath. Fixes
	dependency tracking for .java files.
	* Makefile.in: Rebuilt.

From-SVN: r50024
2002-02-25 09:58:13 +00:00
Adam Megacz
bbe7f26957 natPlainDatagramSocketImpl.cc: whops; removed 'make' typo.
2002-02-24  Adam Megacz  <adam@xwt.org>

        * java/net/natPlainDatagramSocketImpl.cc: whops; removed 'make'
        typo. Sorry.

From-SVN: r50019
2002-02-25 05:21:45 +00:00
Adam Megacz
77da08b08e natPlainDatagramSocketImpl.cc: Updated #includes for Win32...
2002-02-24  Adam Megacz  <adam@xwt.org>

	* java/net/natPlainDatagramSocketImpl.cc: Updated #includes
	for Win32, changed #ifdefs to check WIN32 instead of the
	(now-obsolete) USE_WINSOCK, and removed support for socket
	timeouts on Win32 pending further discussion.

From-SVN: r50017
2002-02-25 04:10:53 +00:00
Adam Megacz
2e8f5b2dde win32-threads.cc (_Jv_ThreadInitData): _Jv_Malloc instead of new
2002-02-24  Adam Megacz  <adam@xwt.org>

	* win32-threads.cc (_Jv_ThreadInitData): _Jv_Malloc instead of new
	* win32-threads.cc (_Jv_ThreadDestroyData): _Jv_Free instead of
	delete

From-SVN: r50014
2002-02-25 02:01:29 +00:00
Adam Megacz
f5d8c6600c Win32Process.java: Created a dummy class to allow build process to run to completion.
2002-02-24  Adam Megacz  <adam@xwt.org>

        * java/lang/Win32Process.java: Created a dummy class to allow
        build process to run to completion.

From-SVN: r50013
2002-02-24 23:17:26 +00:00
Jeff Sturm
a7261b2da0 natMethod.cc (_Jv_CallAnyMethodA): Define ffi_result union for ffi_call result.
* java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA):
        Define ffi_result union for ffi_call result.  Cast
        ffi_result members to jvalue.

From-SVN: r50007
2002-02-24 17:55:44 +00:00
Jeff Sturm
0d06a7332d InvokeReturn.java: New file.
* libjava.lang/InvokeReturn.java: New file.
	* libjava.lang/InvokeReturn.out: New file.

From-SVN: r50001
2002-02-24 06:45:19 +00:00
Alexandre Oliva
d6e671fadf Makefile.in, [...]: Rebuilt.
* Makefile.in, gcj/Makefile.in, include/Makefile.in: Rebuilt.
* testsuite/Makefile.in: Likewise.

From-SVN: r49985
2002-02-23 03:15:37 +00:00
Per Bothner
9abe2e29b4 URL.java (getPath): New JDK 1.3 method.
* java/net/URL.java (getPath):  New JDK 1.3 method.

	* java/net/URLStreamHandler.java (parseURL):
	It is wrong to prepend '/' to the file part of a relative url.

	* java/net/URLStreamHandler.java (parseURL):
	Minor optizations - append '/' rather than "/".

	* java/net/URLStreamHandler.java (parseURL):
	Don't canonicalize "xx/.." or "./" URLs - JDK doesn't.
	We probably should canonicalize for a context-relative url, though.
	* java/net/URL.java (sameFile):  Delegate to URLStreamHandler.
	* java/net/URLStreamHandler.java (canonicalizeFilename):  New helper.
	(sameFile):  New method.  Uses canonicalizeFilename.

From-SVN: r49980
2002-02-22 16:15:49 -08:00
Tom Tromey
1a77d3ba32 natSystem.cc (init_properties): Include the `Inc.' in java.vendor and java.vm.vendor.
* java/lang/natSystem.cc (init_properties): Include the `Inc.' in
	java.vendor and java.vm.vendor.
	* gnu/java/rmi/rmic/RMIC.java (parseOptions): Only print most
	recent copyright date.
	* gnu/gcj/convert/Convert.java (version): Print `Inc'.
	* gij.cc (version): Print `Inc'.

From-SVN: r49975
2002-02-22 23:24:45 +00:00
Alexandre Oliva
eae63c0ae1 acinclude.m4 (CXX): AC_SUBST it, instead of glibcpp_CXX.
* acinclude.m4 (CXX): AC_SUBST it, instead of glibcpp_CXX.
* aclocal.m4, configure: Rebuilt.

From-SVN: r49974
2002-02-22 21:31:06 +00:00
Per Bothner
0bf188159d Connection.java (conect): Open the input and/or output streams immediately here, instead of using File.exists.
* gnu/gcj/protocol/file/Connection.java (conect):  Open the input
	and/or output streams immediately here, instead of using File.exists.
	(inputStream, outputStream):  New fields to save open streams.
	(getInputStream, getOutputStream):  Use already-opened streams.

From-SVN: r49965
2002-02-22 05:53:23 -08:00
Alexandre Oliva
a37049c13b acinclude.m4 (LIB_AC_PROG_CXX): Copied from libstdc++-v3.
* acinclude.m4 (LIB_AC_PROG_CXX): Copied from libstdc++-v3.
Use it.
* Makefile.am (LIBLINK): Use CXX (and its tag) for linking.
* aclocal.m4, configure, Makefile.in: Rebuilt.

From-SVN: r49954
2002-02-22 03:21:28 +00:00
Nic Ferrier
7384051993 Makefile.am (libgcj.jar:): Change to -CLASSPATH
* Makefile.am (libgcj.jar:): Change to -CLASSPATH
	(.class.h:): Ditto.
	(java/lang/ClassLoader.h:): Ditto.
	(java/lang/Thread.h:): Ditto.
	(java/lang/String.h:): Ditto.
	(java/lang/reflect/Constructor.h:): Ditto.
	(java/lang/reflect/Field.h:): Ditto.
	(java/lang/reflect/Method.h:): Ditto.
	(gnu/gcj/runtime/VMClassLoader.h:): Ditto.
	(java/io/ObjectInputStream$$GetField.h:): Ditto.
	(java/io/ObjectOutputStream$$PutField.h:): Ditto.
	* Makefile.in: Rebuilt with libgcj Automake.

From-SVN: r49927
2002-02-21 10:58:12 +00:00
Bryce McKinlay
d1cfac5b6e * libjava.lang/stringconst.xfail: xfail-output -> xfail-source-output.
From-SVN: r49889
2002-02-20 04:18:54 +00:00
Bryce McKinlay
a2139e0c48 libjava.exp: Add "xfail-byte-output" and "xfail-source-output".
* lib/libjava.exp: Add "xfail-byte-output" and "xfail-source-output".
	Don't display expected and actual output for a failed output test.

	* libjava.lang/ArrayStore.java: New file.
	* libjava.lang/ArrayStore.out: New file.
	* libjava.lang/ArrayStore.xfail: New file. xfail-byte-output.
	* libjava.lang/ArrayStore2.java: New file.
	* libjava.lang/ArrayStore2.out: New file.
	* libjava.lang/ArrayStore2.xfail: New file. xfail-source-output.

From-SVN: r49888
2002-02-20 04:14:15 +00:00
Tom Tromey
e4e35417f9 re PR libgcj/5696 (natClass.cc run through superclasses of target if they exist while comparing variable types.)
Fix for PR libgcj/5696:
	* verify.cc (is_assignable_from_slow): Never call
	_Jv_IsAssignableFrom.
	(verify_instructions_0): Added new debug statement.
	(state::print): Print information about whether local has
	changed.
	(state::merge): Don't call note_variable when merging locals.
	(state::set_exception): Removed old FIXME comment.

From-SVN: r49886
2002-02-20 03:16:30 +00:00
Bryce McKinlay
95407a28f6 natPlainDatagramSocketImpl.cc (bind): Call setsockopt to enable SO_BROADCAST.
2002-02-18  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/net/natPlainDatagramSocketImpl.cc (bind): Call setsockopt to
	enable SO_BROADCAST.

From-SVN: r49835
2002-02-18 07:32:34 +00:00
Bryce McKinlay
8417ff635e err7.xfail: Removed.
* libjava.lang/err7.xfail: Removed.
	* libjava.lang/err8.xfail: Removed.

From-SVN: r49831
2002-02-18 03:05:55 +00:00
Jason Merrill
21fe5f6a23 name-finder.cc (toHex): Use word mode, not long long.
* name-finder.cc (toHex): Use word mode, not long long.

        * gnu/gcj/convert/natIconv.cc (write): Avoid sign-compare warning.

From-SVN: r49829
2002-02-17 21:52:44 -05:00
Tom Tromey
ef9c7b8eed re PR libgcj/5695 (verify.cc test that target is an object before running down interfaces)
Fix for PR libgcj/5695:
	* verify.cc (is_assignable_from_slow): Check to see if target is
	an Object before checking to see if source is an interface.
	(verify_instructions_0) [op_invokeinterface]: Handle case where
	we're making an interface call on Object.

From-SVN: r49783
2002-02-15 06:55:42 +00:00
Bryce McKinlay
15b28697de Makefile.in: Rebuilt with Eric's change below.
* Makefile.in: Rebuilt with Eric's change below.

	* java/lang/natMath.cc (abs(jdouble), abs(jfloat), round(jfloat),
	round(jdouble), min(jfloat), max(jfloat), min(jdouble), min(jfloat)):
	Removed functions which are now implemented in Math.java.

From-SVN: r49782
2002-02-15 05:53:29 +00:00
Eric Blake
2f999d0fe7 javaprims.h (java::lang): Add java::lang::StrictMath.
2002-02-14  Eric Blake  <ebb9@email.byu.edu>

	* gcj/javaprims.h (java::lang): Add java::lang::StrictMath.
	* Makefile.am (core_java_source_files): Add
	java/lang/StrictMath.java.
	* java/lang/Math.java: Merge with Classpath.
	* java/lang/StrictMath.java: New file - merge with Classpath.

From-SVN: r49781
2002-02-15 03:21:47 +00:00
Mark Wielaard
894286989e [multiple changes]
2002-02-14  Mark Wielaard  <mark@klomp.org>

    * java/math/BigInteger.java: import gnu.java.math.MPN not the whole
    package as a workaround for gcj 3.0.x

2002-02-14  Mark Wielaard <mark@klomp.org>

    * java/security/BasicPermission.java: extends with fully qualified
    classname as workaround for gcj 3.0.4.

2002-02-14  Eric Blake  <ebb9@email.byu.edu>

    * java/net/DatagramSocketImpl.java (setOption, getOption): Work
    around gcj bug of wrong emitted qualifier for inherited method.
    * java/net/SocketImpl.java (setOption, getOption): Ditto.
    * java/util/WeakHashMap.java (WeakEntrySet): Add non-private
    constructor to reduce amount of emitted bytecode. While this
    happens to work around a jikes 1.15 bug, it is still a useful
    patch even for correct compilers.
    * java/rmi/server/RMIClassLoader.java (MyClassLoader): Ditto.
    * gnu/java/rmi/server/UnicastRemoteCall.java
    (DummyObjectOutputStream, DummyObjectInputStream): Ditto.

2002-02-14  Eric Blake  <ebb9@email.byu.edu>

    * java/net/DatagramSocketImpl.java: Reformat (no code changes).
    * java/net/SocketImpl.java: Ditto.
    * java/rmi/server/RMIClassLoader.java: Ditto.
    * gnu/java/rmi/server/UnicastRemoteCall.java: Ditto.

2002-02-14  Mark Wielaard <mark@klomp.org>

    Thanks to Takashi Okamoto
    * java/util/Arrays.java (ArrayList.indexOf()): this.equals().
    * java/util/Arrays.java (ArrayList.lastIndexOf()): Likewise.
    * java/util/WeakHashMap.java (WeakEntry.getEntry()): this.get().

From-SVN: r49778
2002-02-14 23:16:11 +00:00
Todd Stock
30fbb95c05 re PR libgcj/5670 (verify.cc not properly merging states)
2002-02-13  Todd Stock  <toddastock@yahoo.com>

	Fix for PR libgcj/5670:
	* verify.cc (is_assignable_from_slow): If `source' is interface,
	recursively look for merge with `target'.

From-SVN: r49769
2002-02-14 17:48:36 +00:00
Martin Kahlert
aeb4ed4614 jni.h: Fix typo.
2002-02-14  Martin Kahlert  <martin.kahlert@infineon.com>

	* include/jni.h: Fix typo.

From-SVN: r49767
2002-02-14 15:42:37 +00:00
Martin Kahlert
c66b9fd97e jni.cc (_Jv_JNI_AttachCurrentThread): env->locals assigned correctly.
2002-02-13  Martin Kahlert  <martin.kahlert@infineon.com>

	* jni.cc (_Jv_JNI_AttachCurrentThread): env->locals assigned
	correctly.

From-SVN: r49737
2002-02-13 17:34:52 +00:00
Todd Stock
1eca751e4b re PR libgcj/5671 (verify.cc problem merging local variables)
2002-02-13  Todd Stock  <toddastock@yahoo.com>

	Fix for PR libgcj/5671:
	* verify.cc (state::merge): Handle case where we're merging
	against an interface.

From-SVN: r49735
2002-02-13 17:12:27 +00:00
Tom Tromey
cf3c6c99b8 * exception.cc (std::abort): Mark as noreturn.
From-SVN: r49717
2002-02-13 00:29:42 +00:00
Adam Megacz
26e9664c30 Win32Process.java: Filled in a placeholder implementation so Win32 will build.
2002-02-12  Adam Megacz <adam@xwt.org>

        * java/lang/Win32Process.java: Filled in a placeholder
        implementation so Win32 will build.

From-SVN: r49701
2002-02-12 06:10:45 +00:00
Adam Megacz
8a434a3691 natFilePosix.cc: Copied this from natFile.cc.
2002-02-12  Adam Megacz <adam@xwt.org>

    * java/io/natFilePosix.cc: Copied this from natFile.cc.
    * java/io/natFile.cc: Removed from repository.
    * configure.in: Added AC_LINK_FILES for natFile${PLATFORM}.

From-SVN: r49700
2002-02-12 05:52:33 +00:00
Adam Megacz
1febeb40bf win32.cc: Added two #includes to make win32.cc compile.
2002-02-12  Adam Megacz <adam@xwt.org>

        * win32.cc: Added two #includes to make win32.cc compile.

From-SVN: r49696
2002-02-12 04:35:32 +00:00
Bryce McKinlay
88c38cc1b0 boehm.cc (initialized, [...]): Removed unused declarations.
* boehm.cc (initialized, obj_kind_x, obj_free_list): Removed unused
	declarations.
	(_Jv_InitGC): Don't bother locking, as this is always called from a
	single-thread. Turn off GC_all_interior_pointers. Remove dead code.

From-SVN: r49695
2002-02-12 04:14:52 +00:00
Adam Megacz
b32d2321aa win32.h: Added _Jv_platform_gettimeofday.
2002-02-11  Adam Megacz <adam@xwt.org>

        * include/win32.h: Added _Jv_platform_gettimeofday.
        * win32.cc (_Jv_platform_gettimeofday): Added dummy function.

From-SVN: r49693
2002-02-12 02:25:07 +00:00
Adam Megacz
30529b03fd natFileWin32.cc, [...]: Added #undef STRICT to make windows.h and java/lang/reflect/Modifier.h cooperate.
2002-02-11  Adam Megacz <adam@xwt.org>

    * java/io/natFileWin32.cc, java/io/natFileDescriptorWin32.cc:
    Added #undef STRICT to make windows.h and
    java/lang/reflect/Modifier.h cooperate.

From-SVN: r49692
2002-02-12 02:17:21 +00:00
Adam Megacz
27fa520dc7 natFileWin32.cc: Created a placeholder class with lots of FIXMEs.
2002-02-11  Adam Megacz <adam@xwt.org>

        * java/io/natFileWin32.cc: Created a placeholder class with lots
        of FIXMEs.

From-SVN: r49691
2002-02-12 01:54:18 +00:00
Adam Megacz
1e41e84370 exception.cc (_Jv_Throw, [...]): Changed std::abort() to simply abort().
2002-02-11  Adam Megacz <adam@xwt.org>

    * exception.cc (_Jv_Throw, PERSONALITY_FUNCTION): Changed
    std::abort() to simply abort(). Also added "fake" std::abort() so
    we can #include unwind-pe.h without having to link against
    libstdc++-v3.

From-SVN: r49685
2002-02-11 22:28:58 +00:00
Tom Tromey
62deb2118b For PR java/5641:
* libjava.compile/PR5641.xfail: New file.
	* libjava.compile/PR5641.java: New file.

From-SVN: r49660
2002-02-11 00:18:52 +00:00
Rainer Orth
96b9910446 libjava.exp (libjava_find_lib): Remove duplicate .la files.
2002-02-10  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

	* lib/libjava.exp (libjava_find_lib): Remove duplicate .la files.

From-SVN: r49659
2002-02-11 00:01:11 +00:00
Andreas Tobler
1347adff0d interpret.cc (continue1): Use PUSHL, not PUSHI.
2002-02-10  Andreas Tobler  <toa@pop.agri.ch>

	* interpret.cc (continue1) [insn_f2l]: Use PUSHL, not PUSHI.

From-SVN: r49655
2002-02-10 18:32:48 +00:00
Tom Tromey
30d287947e interpret.cc (convert): New function.
* interpret.cc (convert): New function.
	(continue1) [insn_d2i, insn_d2l, insn_f2i, insn_f2l]: Use
	convert.
	Include Long.h.

From-SVN: r49621
2002-02-08 20:00:40 +00:00
Anthony Green
9782d8f5aa Add xscale-elf support
From-SVN: r49616
2002-02-08 14:46:36 +00:00
Martin Kahlert
d3ae0d490d jni.cc (_Jv_JNI_NewLocalRef): Make sure, that NULL frame is not dereferenced.
2002-02-08  Martin Kahlert  <martin.kahlert@infineon.com>

	* jni.cc (_Jv_JNI_NewLocalRef): Make sure, that NULL frame is not
	dereferenced.
	(_Jv_JNI_AttachCurrentThread): Produce full featured env->locals
	frame.

From-SVN: r49615
2002-02-08 14:18:24 +00:00
Tom Tromey
6478d7c9c1 natFile.cc (_access): Use __builtin_alloca.
* java/io/natFile.cc (_access): Use __builtin_alloca.
	(_stat): Likewise.
	(attr): Likewise.
	(getCanonicalPath): Likewise.
	(performList): Likewise.
	(performMkdir): Likewise.
	(performSetReadOnly): Likewise.
	(performRenameTo): Likewise.
	(performSetLastModified): Likewise.
	(performCreate): Likewise.
	(performDelete): Likewise.

From-SVN: r49607
2002-02-08 04:48:03 +00:00
Adam Megacz
b8d87c3632 Reformatted a changelog entry
From-SVN: r49604
2002-02-08 03:12:51 +00:00
Bryce McKinlay
e291c8db1b * HACKING: Fix URL for the automake-gcj.
From-SVN: r49600
2002-02-08 01:22:47 +00:00
Tom Tromey
85ea93b38f natThrowable.cc: Updated copyright.
* java/lang/natThrowable.cc: Updated copyright.
	* java/io/natFileWin32.cc: Updated copyright.
	* java/io/natFileDescriptorWin32.cc: Updated copyright.
	* win32-threads.cc: Updated copyright.
	* name-finder.cc: Updated copyright.
	* include/name-finder.h: Updated copyright.

From-SVN: r49586
2002-02-07 19:26:06 +00:00
Tom Tromey
9f2618df7e name-finder.h: Conditionally include sys/wait.h.
* include/name-finder.h: Conditionally include sys/wait.h.
	* include/config.h.in: Rebuilt.

From-SVN: r49585
2002-02-07 19:25:28 +00:00
Tom Tromey
fc7563ecb0 natFile.cc (_access): Don't stack-allocate buffer.
* java/io/natFile.cc (_access): Don't stack-allocate buffer.
	Size buffer based on real size of string.
	(_stat): Likewise.
	(attr): Likewise.
	(getCanonicalPath): Likewise.
	(performList): Likewise.
	(performMkdir): Likewise.
	(performSetReadOnly): Likewise.
	(unixroot): Removed.
	(performRenameTo): Likewise.
	(performSetLastModified): Likewise.
	(performCreate): Likewise.
	(performDelete): Likewise.
	(performListRoots): Always return new array.

From-SVN: r49584
2002-02-07 19:18:35 +00:00
Tom Tromey
73272ce608 prims.cc (_Jv_CreateJavaVM): Call _Jv_platform_initialize.
* prims.cc (_Jv_CreateJavaVM): Call _Jv_platform_initialize.
	* win32.cc (win32_exception_handler): Now static.
	* include/win32.h (_Jv_platform_initialize): Declare.
	(win32_exception_handler): Don't declare.
	* java/lang/natSystem.cc (currentTimeMillis): Use
	_Jv_platform_gettimeofday.
	* posix.cc (_Jv_platform_gettimeofday): Renamed.
	(_Jv_select): Use new name.
	(_Jv_platform_initialize): New function.
	* include/posix.h (_Jv_platform_gettimeofday): Renamed from
	_Jv_gettimeofday.
	(_Jv_platform_initialize): Declare.

From-SVN: r49583
2002-02-07 18:59:52 +00:00
Tom Tromey
0669d0ed20 configure: Rebuilt.
* configure: Rebuilt.
	* configure.in: Removed unnecessary parens.

From-SVN: r49581
2002-02-07 18:21:19 +00:00
Adam Megacz
1dd52a9935 For some reason AC_HEADER_SYS_WAIT() isn't defining HAVE_SYS_WAIT_H on Linux...
For some reason AC_HEADER_SYS_WAIT() isn't defining HAVE_SYS_WAIT_H on
Linux; this patch backs out my patch that added the #ifdefs until I
can figure out what happened.

From-SVN: r49572
2002-02-07 10:02:59 +00:00
Adam Megacz
b8fe3c1e06 configure.in: Changed mingw) to *mingw*).
2002-02-06  Adam Megacz <adam@xwt.org>

        * configure.in: Changed mingw) to *mingw*).
        * win32.cc: Created this file.
        * win32.h: Created this file.
        * win32.cc, prims.cc, win32.h (win32_exception_handler): Moved
        win32_exception_handler from prims.cc to win32.cc, added
        header in win32.h.
        * prims.cc: removed some #ifdef-WIN32'd headers which are no
        longer needed now that we have platform.h

From-SVN: r49566
2002-02-07 05:26:42 +00:00
Adam Megacz
df79080e5f shs.h, [...]: use uint<n>_t instead of LONG and BYTE
2002-02-06  Adam Megacz <adam@xwt.org>

        * shs.h, shs.cc, natSimpleSHSStream.cc: use uint<n>_t instead
        of LONG and BYTE

From-SVN: r49565
2002-02-07 05:01:29 +00:00
Adam Megacz
4048d33691 name-finder.h: don't #include sys/wait.h unless HAVE_SYS_WAIT_H
2002-02-06  Adam Megacz <adam@xwt.org>

        * name-finder.h: don't #include sys/wait.h unless HAVE_SYS_WAIT_H

From-SVN: r49564
2002-02-07 04:37:00 +00:00
Anthony Green
b5ee195f1e embedded updates
From-SVN: r49562
2002-02-07 03:24:12 +00:00
Tom Tromey
383aa2ef49 verify.cc (require_array_type): If argument is a null array of references, return null as the element type.
* verify.cc (require_array_type): If argument is a null array of
	references, return null as the element type.

From-SVN: r49561
2002-02-07 02:27:10 +00:00
Mark Wielaard
448f456d7a verify.cc (verify_instructions_0): Actually push the duplicate of a wide type.
2002-02-06  Mark Wielaard  <mark@klomp.org>

	* verify.cc (verify_instructions_0) [op_dup2]: Actually push the
	duplicate of a wide type.

From-SVN: r49559
2002-02-07 01:11:32 +00:00
Tom Tromey
199ecb183b verify.cc (type::isnull): New method.
* verify.cc (type::isnull): New method.
	(require_array_type): Handle case where array is null.
	(verify_instructions_0) [op_arraylength]: Likewise.

From-SVN: r49555
2002-02-06 21:53:59 +00:00
Bryce McKinlay
65c9eafb7b Oops, forgot these in last check-in.
From-SVN: r49537
2002-02-06 05:45:23 +00:00
Bryce McKinlay
8c78e3a3cd configure.in: Set up PLATFORMOBJS not PLATFORM_SPECIFIC_SOURCES.
* configure.in: Set up PLATFORMOBJS not PLATFORM_SPECIFIC_SOURCES.
	Symlink PLATFORMH to platform.h.
	* Makefile.am (libgcj_la_DEPENDENCIES, libgcj_la_LIBADD): Add
	PLATFORMOBJS.
	* java/lang/natSystem.cc: #include platform.h not posix.h.
	* Makefile.in: Rebuilt with libgcj automake.
	* configure: Rebuilt.

From-SVN: r49534
2002-02-06 01:46:46 +00:00
Richard Henderson
7a97f559c5 * Makefile.in: Undo munging last change.
From-SVN: r49519
2002-02-05 00:38:02 -08:00
Richard Henderson
d83726b8d1 Undo munging last update.
From-SVN: r49514
2002-02-05 00:05:41 -08:00
Adam Megacz
d7799ba140 win32.cc: Created it.
2002-02-04  Adam Megacz <adam@xwt.org>

        * win32.cc: Created it.
          configure.in: Added PLATFORM_SPECIFIC_SOURCES,
          which is set to posix.cc or win32.cc.
          Makefile.am: Updated it to use $(PLATFORM_SPECIFIC_SOURCES).

From-SVN: r49509
2002-02-05 02:08:16 +00:00
Adam Megacz
d08e89a9ec configure.in: Corrected mingw case branches; added * before and after.
2002-02-04  Adam Megacz <adam@xwt.org>

        * configure.in: Corrected mingw case branches; added * before
          and after.

From-SVN: r49508
2002-02-05 02:05:05 +00:00
Adam Megacz
4a8e624f35 configure.in: Add -lgdi32 -lwsock32 -lws2_32 to libgcj.spec if compiling for win32
2002-02-04  Adam Megacz <adam@xwt.org>

        * configure.in: Add -lgdi32 -lwsock32 -lws2_32 to libgcj.spec
          if compiling for win32

From-SVN: r49507
2002-02-05 02:04:15 +00:00
Adam Megacz
1d3efb36e8 win32-threads.cc: #undef STRICT after gc.h inclusion
2002-02-04  Adam Megacz <adam@xwt.org>

        * win32-threads.cc: #undef STRICT after gc.h inclusion

From-SVN: r49506
2002-02-05 01:59:44 +00:00
Tom Tromey
9b8b2fcfda * Makefile.in: Rebuilt.
From-SVN: r49447
2002-02-02 21:14:29 +00:00
Jason Merrill
1acce4c771 * Makefile.am (clean-nat): New target.
From-SVN: r49443
2002-02-02 13:23:02 -05:00
Tom Tromey
6c69cbcc69 * java/io/natFile.cc: Removed old "FIXME" comments.
From-SVN: r49434
2002-02-02 07:45:50 +00:00
Tom Tromey
0c91936e40 natPosixProcess.cc (myclose): New function.
* java/lang/natPosixProcess.cc (myclose): New function.
	(fail): Use it.
	(startProcess): Likewise.

From-SVN: r49433
2002-02-02 07:43:16 +00:00
Adam Megacz
ce762b4bde *** empty log message ***
From-SVN: r49431
2002-02-02 04:39:26 +00:00
Adam Megacz
6d829370c0 prims.cc: Added #undef STRICT after #include<windows.h>.
2002-02-01  Adam Megacz <adam@xwt.org>

	* prims.cc: Added #undef STRICT after #include<windows.h>.

From-SVN: r49430
2002-02-02 04:37:54 +00:00
Adam Megacz
a7006428b6 2002-02-01 Adam Megacz <adam@xwt.org>
* prims.cc
        (_Jv_CreateJavaVM): We now use WIN32 instead of
        USE_WIN32_SIGNALLING and USE_WINSOCK.
        (win32_exception_handler): Now throws an exception out of
        the signal handler; assumes SJLJ

From-SVN: r49429
2002-02-02 04:34:15 +00:00
Adam Megacz
a70cb11b6c 2002-02-01 Adam Megacz
* win32-threads.cc:
        (_Jv_CondWait, _Jv_CondNotify, _Jv_CondNotifyAll): Corrected
        wait() algorithm to make it safe.
        (ensure_condvar_initialized, _Jv_CondInit, _Jv_CondDestroy):
        Added lazy creation of Win32 Events for better performance
        (really_start): This now uses GC_CreateThread so boehm-gc
        knows about new threads even when statically linked.

From-SVN: r49428
2002-02-02 04:31:34 +00:00
Adam Megacz
8627cc158d win32-threads.h (_Jv_ConditionVariable_t): Now a struct, to enable safer wait() algorithm.
2002-02-01  Adam Megacz <adam@xwt.org>

        * include/win32-threads.h (_Jv_ConditionVariable_t): Now a struct, to
	enable safer wait() algorithm.
	(_Jv_CondWait, _Jv_CondInit, _Jv_CondDestroy, _Jv_CondNotify,
	_Jv_CondNotifyAll): Implementations moved to win32-threads.cc.
	(_Jv_MutexInit, _Jv_HaveMutexDestroy, _Jv_MutexUnlock,
	_Jv_MutexLock, _Jv_ThreadYield): Reimplement using CRITICAL_SECTIONs
	instead of mutex.
	(_Jv_ThreadYield): Don't call Sleep(), because it crashes win98.

From-SVN: r49427
2002-02-02 04:27:34 +00:00
Adam Megacz
54a190dd7b configure.in: Added support for mingw.
2002-02-01  Adam Megacz <adam@xwt.org>

        * configure.in: Added support for mingw.
        * java/lang/Win32Process.java: Created as empty file.
        * java/lang/natWin32Process.cc: Created as empty file.

From-SVN: r49425
2002-02-02 04:19:24 +00:00
Craig Rodrigues
1c24f830c5 re PR java/4972 (undefined reference to `libiconv')
2002-02-01  Craig Rodrigues  <rodrigc@gcc.gnu.org>

        PR java/4972
        * aclocal.m4, acinclude.m4 (AM_ICONV): Put linking flags
        for libiconv in LIBICONV variable.
        * configure: Regenerated.

From-SVN: r49411
2002-02-01 21:16:05 +00:00
Tom Tromey
de0ed7b6c5 verify.cc (state::enter_subroutine): New method.
* verify.cc (state::enter_subroutine): New method.
	(handle_jsr_insn): Use it.
	(state::merge): When processing a `ret', correctly use
	subroutine's state to determine which local variables have
	changed.
	(push_exception_jump): Don't let stack overflow.

From-SVN: r49388
2002-02-01 05:48:00 +00:00
Joseph Myers
8512bbd752 gccbug.in: Follow GNU Coding Standards for --version.
gcc:
	* gccbug.in: Follow GNU Coding Standards for --version.  Use GCC
	version rather than GNATS version in --version output.

gcc/f:
	* g77spec.c (lang_specific_driver): Follow GNU Coding Standards
	for --version.

gcc/java:
	* gjavah.c (version), jcf-dump.c (version), jv-scan.c (version):
	Follow GNU Coding Standards for --version.

libjava:
	* gnu/gcj/convert/Convert.java: Only include one copyright year in
	--version output.

From-SVN: r49372
2002-01-31 19:36:28 +00:00
Tom Tromey
1b8337e7e1 natPlainSocketImpl.cc (_Jv_recv): Added template parameter for `recv' return type.
* java/net/natPlainSocketImpl.cc (_Jv_recv): Added template
	parameter for `recv' return type.

From-SVN: r49345
2002-01-30 22:22:36 +00:00
Tom Tromey
b3de7ff371 verify.cc (handle_ret_insn): Check for subroutine merge here...
* verify.cc (handle_ret_insn): Check for subroutine merge here...
	(state::merge): ... not here.
	(subr_entry_info): New structure.
	(entry_points): New field.
	(~_Jv_BytecodeVerifier): Correctly free jsr_ptrs.  Free
	entry_points.

From-SVN: r49344
2002-01-30 22:20:23 +00:00
Tom Tromey
7950ed567c List.java (addNotify): Correctly check to see if peer does not exist.
* java/awt/List.java (addNotify): Correctly check to see if peer
	does not exist.

From-SVN: r49335
2002-01-30 02:47:48 +00:00
Tom Tromey
6c54b16cef GridLayout.java (layoutContainer): Use number of rows to compute height of each cell...
* java/awt/GridLayout.java (layoutContainer): Use number of rows
	to compute height of each cell, and number of columns to compute
	width of each cell.
	* java/awt/Window.java (getOwnedWindows): Don't return null.
	* java/awt/FlowLayout.java (layoutContainer): Set width and height
	of component.  Increment x using horizontal gap, not vertical
	gap.

From-SVN: r49320
2002-01-29 16:31:24 +00:00
Tom Tromey
8987cc881f verify.cc (class _Jv_BytecodeVerifier): `nargs' byte is number of words, not number of arguments.
* verify.cc (class _Jv_BytecodeVerifier) [op_invokeinterface]:
	`nargs' byte is number of words, not number of arguments.

From-SVN: r49292
2002-01-28 18:52:44 +00:00
Tom Tromey
b535229173 MouseEvent.java (modifiers): Removed field.
* java/awt/event/MouseEvent.java (modifiers): Removed field.
	(when): Likewise.
	* java/awt/event/InputEvent.java (modifiers, when): Now
	package-private.

From-SVN: r49275
2002-01-28 06:34:01 +00:00
Tom Tromey
1919a4e7e0 verify.cc (class _Jv_BytecodeVerifier): Removed `FIXME' comment and to-do list.
* verify.cc (class _Jv_BytecodeVerifier): Removed `FIXME' comment
	and to-do list.
	(state::merge): Use current class' class loader.
	(state::print): Print subroutine.
	(state::merge): Don't look at subroutine of unmerged `ret'.

From-SVN: r49274
2002-01-28 00:46:23 +00:00
Andreas Tobler
73068e369f nogc.cc: Remove warnings.
2002-01-26 Andreas Tobler <a.tobler@schweiz.ch>

	* nogc.cc: Remove warnings.
	(_Jv_GCRegisterDisappearingLink, _Jv_GCCanReclaimSoftReference):
	New functions.

From-SVN: r49273
2002-01-27 22:33:35 +00:00
Bryce McKinlay
2198265a72 MemoryImageSource.java (newPixels(byte[], ColorModel, int, int): Remove empty "if" statement to work around compiler bug.
* java/awt/image/MemoryImageSource.java (newPixels(byte[], ColorModel,
        int, int):  Remove empty "if" statement to work around compiler bug.
        (newPixels(int[], ColorModel, int, int): Likewise.

From-SVN: r49245
2002-01-26 08:35:34 +00:00
Per Bothner
f24e160adc ChangeLog entry for verify.cc.
From-SVN: r49241
2002-01-25 22:33:31 -08:00
Per Bothner
f70443f75c verify.cc (verify_fail): Change from being a top-level function to e method of _Jv_BytecodeVerifier.
* verify.cc (verify_fail):  Change from being a top-level function
	to e method of _Jv_BytecodeVerifier.  Emit current method name.
	Pass the current verifier to type: and state: methods as needed,
	for better error messages, and for resolve.
	(resolve):  Pass current class's loader for Class.forName and
	_Jv_FindClassFromSignature, rather than using the default loader.
	(various type: and state: methods):  Take _Jv_BytecodeVerifier* arg.
	(get_type_val_for_signature):  Make non-static.
	(various methods):  Pass start_PC implicitly, not explicitly.

From-SVN: r49240
2002-01-25 22:32:55 -08:00
Tom Tromey
2fb4e07f24 FlowLayout.java (layoutContainer): Correctly compute loop termination condition.
* java/awt/FlowLayout.java (layoutContainer): Correctly compute
	loop termination condition.
	* java/awt/GridLayout.java (getSize): Use `real_cols' to compute
	width.

From-SVN: r49216
2002-01-25 17:25:26 +00:00
Tom Tromey
02ad93a608 Shape.java: Merged with Classpath.
* java/awt/Shape.java: Merged with Classpath.
	* java/awt/Scrollbar.java: Merged with Classpath.

From-SVN: r49208
2002-01-25 07:06:06 +00:00
Tom Tromey
17af0664ba Updated copyright date
From-SVN: r49207
2002-01-25 07:05:38 +00:00
Tom Tromey
0983da5b0f Container.java (addNotify): Unconditionally call addNotifyContainerChildren and superclass addNotify.
* java/awt/Container.java (addNotify): Unconditionally call
	addNotifyContainerChildren and superclass addNotify.

From-SVN: r49206
2002-01-25 07:04:06 +00:00
Tom Tromey
8c77cda54f ColorModel.java (getAlpha(Object)): Call getAlpha, not getBlue.
* java/awt/image/ColorModel.java (getAlpha(Object)): Call
	getAlpha, not getBlue.

From-SVN: r49203
2002-01-25 05:44:03 +00:00
Bryce McKinlay
974bbe9ffe Fix up last entry.
From-SVN: r49202
2002-01-25 04:42:12 +00:00
Bryce McKinlay
30ed0c4529 PixelGrabber.java (grabPixels()): Call grabPixels(0).
* java/awt/image/PixelGrabber.java (grabPixels()): Call grabPixels(0).
	* java/awt/image/PixelGrabber.java (grabPixels(long)): Wait to be
	notified that the ImageProducer has completed.

From-SVN: r49201
2002-01-25 04:39:04 +00:00
Bryce McKinlay
9fa5237cb7 natObject.cc (X86 compare_and_swap): Use +m constraint.
2002-01-25  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/lang/natObject.cc (X86 compare_and_swap): Use +m constraint.

From-SVN: r49198
2002-01-25 02:53:37 +00:00
Per Bothner
054117f98d Improved ChangeLog entry for verify.cc (is_assignable_from_slow).
From-SVN: r49190
2002-01-24 12:10:17 -08:00
Per Bothner
7ac20fe4e7 verify.cc (is_assignable_from_slow): If source is an interface, we must also check the superclass.
* verify.cc (is_assignable_from_slow): If source is an interface,
	we must also check the superclass.

From-SVN: r49189
2002-01-24 12:02:21 -08:00
Tom Tromey
d6c8012e6f * gnu/awt/xlib/XToolkit.java (getPrintJob): New stub method.
From-SVN: r49184
2002-01-24 16:44:37 +00:00
Tom Tromey
619e2b8493 BorderLayout.java (addLayoutComponent): Added missing `else'.
* java/awt/BorderLayout.java (addLayoutComponent): Added missing
	`else'.

From-SVN: r49172
2002-01-24 06:39:29 +00:00
Tom Tromey
92bc8733c6 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.
	* java/awt/Toolkit.java: Merged with Classpath.
	* java/awt/PrintGraphics.java: New file from Classpath.
	* java/awt/PrintJob.java: New file from Classpath.
	* java/awt/datatransfer/Clipboard.java: New file from Classpath.
	* java/awt/datatransfer/ClipboardOwner.java: New file from
	Classpath.
	* java/awt/datatransfer/DataFlavor.java: New file from Classpath.
	* java/awt/datatransfer/FlavorMap.java: New file from Classpath.
	* java/awt/datatransfer/MimeTypeParseException.java: New file from
	Classpath.
	* java/awt/datatransfer/StringSelection.java: New file from
	Classpath.
	* java/awt/datatransfer/SystemFlavorMap.java: New file from
	Classpath.
	* java/awt/datatransfer/Transferable.java: New file from
	Classpath.
	* java/awt/datatransfer/UnsupportedFlavorException.java: New file
	from Classpath.

From-SVN: r49171
2002-01-24 06:31:02 +00:00
Tom Tromey
f7b54dea72 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.
	* java/awt/image/AreaAveragingScaleFilter.java: New file from
	Classpath.
	* java/awt/image/CropImageFilter.java: New file from Classpath.
	* java/awt/image/FilteredImageSource.java: New file from
	Classpath.
	* java/awt/image/ImageFilter.java: New file from Classpath.
	* java/awt/image/MemoryImageSource.java: New file from Classpath.
	* java/awt/image/PixelGrabber.java: New file from Classpath.
	* java/awt/image/RGBImageFilter.java: New file from Classpath.
	* java/awt/image/ReplicateScaleFilter.java: New file from
	Classpath.
	* java/awt/image/ImageProducer.java: Replaced with Classpath
	version.
	* java/awt/image/ImageObserver.java: Replaced with Classpath
	version.
	* java/awt/image/ImageConsumer.java: Replaced with Classpath
	version.
	* java/awt/GridBagConstraints.java (clone): Catch
	CloneNotSupportedException.

From-SVN: r49169
2002-01-24 05:51:34 +00:00
Tom Tromey
152d4916ef Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Added new files.
	* java/awt/image/AreaAveragingScaleFilter.java: New file from
	Classpath.
	* java/awt/image/CropImageFilter.java: New file from Classpath.
	* java/awt/image/FilteredImageSource.java: New file from
	Classpath.
	* java/awt/image/ImageFilter.java: New file from Classpath.
	* java/awt/image/MemoryImageSource.java: New file from Classpath.
	* java/awt/image/PixelGrabber.java: New file from Classpath.
	* java/awt/image/RGBImageFilter.java: New file from Classpath.
	* java/awt/image/ReplicateScaleFilter.java: New file from
	Classpath.
	* java/awt/image/ImageProducer.java: Replaced with Classpath
	version.
	* java/awt/image/ImageObserver.java: Replaced with Classpath
	version.
	* java/awt/image/ImageConsumer.java: Replaced with Classpath
	version.
	* java/awt/GridBagConstraints.java (clone): Catch
	CloneNotSupportedException.

From-SVN: r49157
2002-01-24 01:05:12 +00:00
Per Bothner
033509daea natField.cc (setAddr): New function.
* java/lang/reflect/natField.cc (setAddr):  New function.
	Calls getAddr and then checks that the field isn't final.
	(setBoolean. setChar, setByte, setShort, setInt, setLong, setFloat,
	setDouble, set):  Use setAddr instead of getAddr, to check for FINAL.
	(set):  Call setAddr before check that new value has right type,
	to better match specified semantics.

From-SVN: r49153
2002-01-23 11:42:18 -08:00
Tom Tromey
956e776dd2 TextField.java: Replaced with Classpath version.
* java/awt/TextField.java: Replaced with Classpath version.
	* java/awt/TextArea.java: Replaced with Classpath version.
	* java/awt/TextComponent.java: Replaced with Classpath version.

From-SVN: r49113
2002-01-23 00:07:39 +00:00
Tom Tromey
7f7cfc73b8 * java/awt/GridBagConstraints.java: Updated copyright.
From-SVN: r49109
2002-01-22 23:11:30 +00:00
Mark Wielaard
98c3a44f25 Add license clarification.
From-SVN: r49107
2002-01-22 22:58:09 +00:00
Mark Wielaard
92aaa24628 Add license clarification.
From-SVN: r49104
2002-01-22 22:40:42 +00:00
Tom Tromey
bda1450543 ButtonPeer.java: Replace with Classpath version.
* java/awt/peer/ButtonPeer.java: Replace with Classpath version.
	* java/awt/peer/CanvasPeer.java: Replace with Classpath version.
	* java/awt/peer/CheckboxMenuItemPeer.java: Replace with Classpath
	version.
	* java/awt/peer/CheckboxPeer.java: Replace with Classpath version.
	* java/awt/peer/ChoicePeer.java: Replace with Classpath version.
	* java/awt/peer/ComponentPeer.java: Replace with Classpath version.
	* java/awt/peer/ContainerPeer.java: Replace with Classpath version.
	* java/awt/peer/DialogPeer.java: Replace with Classpath version.
	* java/awt/peer/FileDialogPeer.java: Replace with Classpath version.
	* java/awt/peer/FontPeer.java: Replace with Classpath version.
	* java/awt/peer/FramePeer.java: Replace with Classpath version.
	* java/awt/peer/LabelPeer.java: Replace with Classpath version.
	* java/awt/peer/LightweightPeer.java: Replace with Classpath version.
	* java/awt/peer/ListPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuBarPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuComponentPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuItemPeer.java: Replace with Classpath version.
	* java/awt/peer/MenuPeer.java: Replace with Classpath version.
	* java/awt/peer/PanelPeer.java: Replace with Classpath version.
	* java/awt/peer/PopupMenuPeer.java: Replace with Classpath version.
	* java/awt/peer/ScrollPanePeer.java: Replace with Classpath version.
	* java/awt/peer/ScrollbarPeer.java: Replace with Classpath version.
	* java/awt/peer/TextAreaPeer.java: Replace with Classpath version.
	* java/awt/peer/TextComponentPeer.java: Replace with Classpath version.
	* java/awt/peer/TextFieldPeer.java: Replace with Classpath version.
	* java/awt/peer/WindowPeer.java: Replace with Classpath version.
	* gnu/awt/xlib/XPanelPeer.java (insets): New method.
	* gnu/awt/xlib/XCanvasPeer.java (show, hide): New methods.
	(minimumSize, preferredSize, reshape): Likewise.
	* gnu/awt/xlib/XFramePeer.java (insets, enable, disable,
	getColorModel): New methods.
	* java/awt/PopupMenu.java: Merged with Classpath.
	* java/awt/MenuBar.java: Merged with Classpath.
	* java/awt/SystemColor.java: Replace with Classpath version.
	* java/awt/Panel.java: Merged with Classpath.
	* java/awt/PaintContext.java: Updated copyright.
	* java/awt/MenuShortcut.java: Merged with Classpath.
	* java/awt/MenuContainer.java: Merged with Classpath.
	* java/awt/Menu.java: Merged with Classpath.
	* java/awt/MediaEntry.java: New file from Classpath.
	* java/awt/MediaTracker.java: New file from Classpath.
	* java/awt/List.java: Merged with Classpath version.
	* java/awt/Insets.java: Merged with Classpath version.
	* java/awt/ImageMediaEntry.java: New file from Classpath.
	* java/awt/Image.java: Replaced with Classpath version.
	* java/awt/FontMetrics.java: Merged with Classpath version.
	* java/awt/Cursor.java (getDefaultCursor): Use DEFAULT_CURSOR
	constant.
	* java/awt/Font.java: Merged with Classpath version.
	* java/awt/Dialog.java: Merged with Classpath version.
	* java/awt/Color.java: Merged with Classpath version.
	* java/awt/Choice.java: Merged with Classpath version.
	* java/awt/CheckboxMenuItem.java: Merged with Classpath version.
	* java/awt/Adjustable.java: Replace with Classpath version.
	* java/awt/MenuItem.java (paramString): Don't include class name
	or brackets.  Call superclass paramString.
	* java/awt/MenuComponent.java (toString): Call paramString.
	(paramString): Compute string; don't call toString.
	* java/awt/Label.java (paramString): Don't include class name
	or brackets.  Call superclass paramString.
	* java/awt/Checkbox.java (paramString): Don't include class name
	or brackets.  Call superclass paramString.
	* java/awt/Button.java (paramString): Don't include class name or
	brackets.  Call superclass paramString.
	* java/awt/MenuComponent.java (getTreeLock): Now protected.

From-SVN: r49099
2002-01-22 22:03:04 +00:00
Tom Tromey
1ec968465b ChangeLog rotation
From-SVN: r49061
2002-01-22 00:20:23 +00:00
Andreas Schwab
464115ce93 natPlainSocketImpl.cc (_Jv_recv): Change return type of function and of parameter recv_func to ssize_t...
* java/net/natPlainSocketImpl.cc (_Jv_recv): Change return type of
function and of parameter recv_func to ssize_t, as specified by
POSIX.

From-SVN: r49020
2002-01-20 16:34:07 +00:00
Per Bothner
e5550355c8 ZipOutputStream.java (putNextEntry): Clear uncompressed_size in readiness for next entry.
* java/util/zip/ZipOutputStream.java (putNextEntry):  Clear
	uncompressed_size in readiness for next entry.

From-SVN: r49014
2002-01-19 12:51:48 -08:00
Tom Tromey
80d1ee91f9 natPlainSocketImpl.cc: Include IllegalArgumentException.h.
* java/net/natPlainSocketImpl.cc: Include
	IllegalArgumentException.h.
	(_Jv_recv): New template function.
	(BooleanClass): Removed.
	(read): Use _Jv_recv.
	(setOption): Use Boolean::class$.  Throw exception if object is
	not Boolean or Integer.

From-SVN: r48992
2002-01-18 17:23:23 +00:00
Tom Tromey
10185e3886 MenuComponent.java: Merged with Classpath.
* java/awt/MenuComponent.java: Merged with Classpath.
	* java/awt/MenuItem.java: Merged with Classpath.
	* java/awt/Button.java: Merged with Classpath.

From-SVN: r48975
2002-01-18 01:01:58 +00:00
Tom Tromey
16348d58cd * java/awt/ActiveEvent.java: Updated copyright.
From-SVN: r48972
2002-01-17 23:23:29 +00:00
Tom Tromey
c56664e09e AWTError.java: Replaced with Classpath version.
* java/awt/AWTError.java: Replaced with Classpath version.
	* java/awt/AWTException.java: Replaced with Classpath version.
	* java/awt/IllegalComponentStateException.java: Replaced with
	Classpath version.

From-SVN: r48961
2002-01-17 17:35:28 +00:00
Tom Tromey
4cd533411e Canvas.java (serialVersionUID): New constant.
* java/awt/Canvas.java (serialVersionUID): New constant.
	Updated copyright.  Added javadoc from Classpath.
	* java/awt/ItemSelectable.java: Replaced with Classpath version.

From-SVN: r48934
2002-01-16 23:56:25 +00:00
Tom Tromey
d8d27d73b0 CheckboxGroup.java: Merged with Classpath.
* java/awt/CheckboxGroup.java: Merged with Classpath.
	* java/awt/Checkbox.java: Merged with Classpath.

From-SVN: r48933
2002-01-16 23:40:04 +00:00
Tom Tromey
a82484a674 Dimension.java: Updated copyright.
* java/awt/Dimension.java: Updated copyright.  Added javadoc from
	Classpath.
	* java/awt/Point.java: Updated copyright.

From-SVN: r48932
2002-01-16 23:10:11 +00:00
Tom Tromey
a53c400d2a Point.java (toString): Use getClass().getName().
* java/awt/Point.java (toString): Use getClass().getName().
	Added javadoc.

From-SVN: r48929
2002-01-16 21:35:51 +00:00
Tom Tromey
510e283256 IdentityHashMap.java (IdentityHashMap): Removed commented code.
* java/util/IdentityHashMap.java (IdentityHashMap): Removed
	commented code.
	(hash): Correctly compute initial value for `h'.

From-SVN: r48925
2002-01-16 20:56:38 +00:00
Tom Tromey
54c5eaff95 * java/awt/Label.java: Merged with Classpath.
From-SVN: r48913
2002-01-16 16:50:03 +00:00
Tom Tromey
7adf768017 * java/awt/AWTPermission.java: Updated copyright.
From-SVN: r48900
2002-01-16 05:48:49 +00:00
Tom Tromey
0e1c7a5f36 LayoutManager2.java: Merged with Classpath.
* java/awt/LayoutManager2.java: Merged with Classpath.
	* java/awt/LayoutManager.java: Merged with Classpath.
	* java/awt/GridLayout.java: Updated copyright and javadoc.
	(getSize): Use `parent.ncomponents'.  Handle insets.
	(layoutContainer): Use `parent.ncomponents'.  Handle case where
	there are fewer children than columns.  Correctly compute size of
	each cell in the grid.  Handle case where there isn't enough
	space.
	* java/awt/CardLayout.java (tab): Renamed from `map'.  Updated
	all users.
	(gotoComponent): Use parent.ncomponents.  Ensure child exists
	before calling setVisible() on it.  Last item is `num - 1', not
	`num'.
	(layoutContainer): Hoist invariants out of loop.

From-SVN: r48898
2002-01-16 05:32:51 +00:00
Tom Tromey
3bd483f2a1 Start of AWT merge with Classpath:
* Makefile.in: Rebuilt.
	* Makefile.am (awt_java_source_files): Reference files in
	gnu/java/awt, not gnu/gcj/awt.
	* java/awt/image/BufferedImage.java: Updated copyright.
	* java/awt/image/ComponentColorModel.java: Updated copyright.
	* java/awt/image/ComponentSampleModel.java: Updated copyright.
	* java/awt/image/DataBuffer.java: Updated copyright.
	* java/awt/image/DataBufferByte.java: Updated copyright.
	* java/awt/image/DataBufferInt.java: Updated copyright.
	* java/awt/image/DataBufferUShort.java: Updated copyright.
	* java/awt/image/IndexColorModel.java: Updated copyright.
	* java/awt/image/PackedColorModel.java: Updated copyright.
	* java/awt/image/Raster.java: Updated copyright.
	* java/awt/image/RasterOp.java: Updated copyright.
	* java/awt/image/SampleModel.java: Updated copyright.
	* java/awt/image/SinglePixelPackedSampleModel.java: Updated copyright.
	* java/awt/image/WritableRaster.java: Updated copyright.
	* java/awt/color/ColorSpace.java: Updated copyright.
	* java/awt/color/ICC_ColorSpace.java: Updated copyright
	* java/awt/color/ICC_Profile.java: Updated copyright.
	* java/awt/event/HierarchyBoundsAdapter.java: Updated copyright.
	* java/awt/event/HierarchyBoundsListener.java: Updated copyright.
	* java/awt/event/HierarchyEvent.java: Updated copyright.
	* java/awt/event/HierarchyListener.java: Updated copyright.
	* java/awt/geom/AffineTransform.java: Updated copyright.
	* java/awt/geom/Dimension2D.java: Updated copyright.
	* java/awt/geom/Ellipse2D.java: Updated copyright.
	* java/awt/geom/IllegalPathStateException.java: Updated copyright.
	* java/awt/geom/Line2D.java: Updated copyright.
	* java/awt/geom/NoninvertibleTransformException.java: Updated
	copyright.
	* java/awt/geom/PathIterator.java: Updated copyright.
	* java/awt/geom/Point2D.java: Updated copyright.
	* java/awt/geom/Rectangle2D.java: Updated copyright.
	* java/awt/geom/RectangularShape.java: Updated copyright.
	* java/awt/geom/RoundRectangle2D.java: Updated copyright.
	* java/awt/Toolkit.java: Updated import for file moves.
	* java/awt/Rectangle.java: Updated copyright; added javadoc from
	Classpath.
	(hashCode): New method from Classpath.
	* java/awt/Graphics2D.java: Updated copyright.
	* java/awt/Transparency.java: Updated copyright.
	* java/awt/Paint.java: Updated copyright.
	* java/awt/Graphics.java: New version from Classpath.
	* java/awt/EventDispatchThread.java: Updated copyright.
	* java/awt/CardLayout.java (layoutContainer): Don't skip invisible
	children.
	(gotoComponent): Wrap around on next/previous.
	* gnu/gcj/awt/BitMaskExtent.java: Removed.
	* gnu/gcj/awt/Buffers.java: Removed.
	* gnu/gcj/awt/ComponentDataBlitOp.java: Removed.
	* gnu/gcj/awt/GLightweightPeer.java: Removed.
	* gnu/java/awt/BitMaskExtent.java: Added.
	* gnu/java/awt/Buffers.java: Added.
	* gnu/java/awt/ComponentDataBlitOp.java: Added.
	* gnu/java/awt/GLightweightPeer.java: Added.
	* java/awt/geom/Line2D.java (clone): Ignore
	CloneNotSupportedException.
	* gnu/gcj/awt/GLightweightPeer.java (getColorModel): New method.
	* java/awt/Frame.java: Merged with Classpath.
	* java/awt/RenderingHints.java: Copyright update.
	* java/awt/Paint.java: Copyright update.
	* java/awt/image/DirectColorModel.java: Merged with Classpath.
	* java/awt/image/ColorModel.java: Merged with Classpath.
	* java/awt/Window.java (show): New Implementation from Classpath.
	(isShowing): Use super.isShowing().
	* java/awt/EventQueue.java: Merged with Classpath.
	* java/awt/AWTEventMulticaster.java (save): Throw
	RuntimeException.
	(saveInternal): Likewise.
	* java/awt/AWTEvent.java: Now implements Serializable.
	* java/awt/Event.java: Copyright update.
	* java/awt/peer/ComponentPeer.java: Merged with Classpath.
	* java/awt/image/BufferedImage.java: Copyright update.
	* java/awt/GraphicsConfiguration.java: Copyright update.
	* java/awt/Component.java: (addNotify): Don't call
	addNotifyContainerChildren().
	(addNotifyContainerChildren): Removed.
	(setPeer): New method from Classpath.
	(setTreeLock): Likewise.
	(setVisible): Rewrote.
	(show): Use it.
	(hide): Likewise.
	(validate): Set `valid'.
	(checkImage(Image,ImageObserver)): Implementation from Classpath.
	(createImage(ImageProducer)): Likewise.
	(prepareImage): Likewise.
	* java/awt/Container.java (addImpl): Handle case where constraint
	is not a String.  Post event via system event queue.
	(remove): Post event via system event queue.
	(validateTree): Only validate child if it is invalid.
	(getAlignmentX): Call super method as default.
	(getAlignmentY): Likewise.
	(addContainerListener): Now synchronized.
	(removeContainerListener): Likewise.
	(addNotifyContainerChildren): Now private.
	* java/awt/ComponentOrientation.java: Updated copyright.  Added
	@author.
	* java/awt/FlowLayout.java (serialVersionUID): New field.
	(setAlignment): Better exception message.
	(layoutContainer): Don't compute component's preferred size unless
	we're going to use it.
	* java/awt/BorderLayout.java (AFTER_LAST_LINE, AFTER_LINE_ENDS,
	BEFORE_FIRST_LINE, BEFORE_LINE_BEGINS): New constants.
	(firstLine, lastLine, firstItem, lastItem): New fields.
	(addLayoutComponent): Handle case where constraints is null.
	Also, handle relative locations.
	(removeLayoutComponent): Handle relative locations.
	(MIN, MAX, PREF): New constants.
	(calcCompSize): New method.
	(calcSize): New method.
	(minimumLayoutSize): Use it.
	(preferredLayoutSize): Likewise.
	(maximumLayoutSize): Likewise.
	(toString): Include more information.
	(setBounds): New method.
	(layoutContainer): Use libgcj implementation; extended to handle
	relative locations.

From-SVN: r48896
2002-01-16 04:21:35 +00:00
Tom Tromey
c342f12677 [multiple changes]
2002-01-15  Tom Tromey  <tromey@redhat.com>

	* java/lang/Float.java (equals): Preserve old code.
	* java/lang/Double.java (equals): Preserve old code.

2002-01-15  Eric Blake  <ebb9@email.byu.edu>

	* java/lang/Double.java (equals, compare): Fix 0.0 vs. -0.0 math.
	* java/lang/Float.java (equals, compare): Ditto.

From-SVN: r48895
2002-01-16 04:06:33 +00:00
Mark Wielaard
1536ef88f1 DatagramSocket.java (getReceiveBufferSize): new 1.2 method.
* java/net/DatagramSocket.java (getReceiveBufferSize): new 1.2 method.
	* java/net/DatagramSocket.java (getSendBufferSize): Likewise.
	* java/net/DatagramSocket.java (setReceiveBufferSize): Likewise.
	* java/net/DatagramSocket.java (setSendBufferSize): Likewise.

From-SVN: r48814
2002-01-13 11:59:37 +00:00
Mark Wielaard
9566a90c6b InetAddress.java (ANY_IF): moved from ServerSocket.
* java/net/InetAddress.java (ANY_IF): moved from ServerSocket.
        * java/net/DatagramSocket.java (DatagramSocket): use ANY_IF from
        InetAddress.
        * java/net/MulticastSocket.java (MulticastSocket): Likewise.
        * java/net/Socket.java: Merge with Classpath.
        * java/net/ServerSocket.java: Likewise.

From-SVN: r48797
2002-01-12 10:11:13 +00:00
Chris Sears
cec718682b interpret.cc (NULLARRAYCHECK): New macro.
2002-01-11  Chris Sears  <cbsears_sf@yahoo.com>

	* interpret.cc (NULLARRAYCHECK): New macro.
	(SAVE_PC): Just store `pc'.
	(find_exception): Subtract one from `pc' here.
	(continue1) [insn_iaload, insn_laload, insn_faload, insn_daload,
	insn_aaload, insn_baload, insn_caload, insn_saload, insn_iastore,
	insn_lastore, insn_fastore, insn_dastore, insn_aastore,
	insn_bastore, insn_castore, insn_sastore]: Use NULLARRAYCHECK, and
	don't call SAVE_PC.
	(continue1) [insn_fdiv, insn_ddiv, insn_frem, insn_drem]: Don't
	call SAVE_PC.

From-SVN: r48787
2002-01-12 00:19:05 +00:00
Tom Tromey
999825b056 natSystem.cc (init_properties): Only look for default locale if LC_MESSAGES is defined.
* java/lang/natSystem.cc (init_properties): Only look for default
	locale if LC_MESSAGES is defined.
	* aclocal.m4, configure, include/config.h.in: Rebuilt.
	* configure.in: Call AM_LC_MESSAGES.
	* acinclude.m4 (AM_LC_MESSAGES): New macro.

From-SVN: r48781
2002-01-11 23:00:58 +00:00
Tom Tromey
ac2ee9b7e7 For PR libgcj/5303:
* gnu/java/rmi/rmic/RMIC.java (parseOptions): Handle --help and
	--version.  Recognize GNU-style long options.  Print GNU-style
	error messages.
	(usage): Print GNU-style help.  Exit with status 0.
	(error): New method.
	(run): Print error message if no class names found.
	(main): Don't print usage on error.

From-SVN: r48740
2002-01-10 18:01:05 +00:00
Tom Tromey
346a81f0a5 Convert.java (version): Use java.vm.name property.
* gnu/gcj/convert/Convert.java (version): Use java.vm.name
	property.
	(help, version): Use println(), not println("").

From-SVN: r48739
2002-01-10 17:56:26 +00:00
Tom Tromey
54a8a50f80 For PR libgcj/5303:
* gnu/gcj/convert/Convert.java (error): Program is called
	`jv-convert'.  Print GNU-style message.  Exit with status 1, not
	-1.
	(main): Handle --help and --version.
	(help): New method.
	(version): Likewise.

From-SVN: r48703
2002-01-10 00:39:16 +00:00
Tom Tromey
35484f777f Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added new files.
	* gnu/java/locale/LocaleInformation.java: Extend
	LocaleInformation_en.
	* gnu/java/locale/LocaleInformation_en.java: Added zone strings
	and time/date formats.
	* gnu/java/locale/LocaleInformation_en_US.java: Now automatically
	generated.
	* gnu/java/locale/LocaleInformation_af_ZA.java: New file.
	* gnu/java/locale/LocaleInformation_ar_AE.java: New file.
	* gnu/java/locale/LocaleInformation_ar_BH.java: New file.
	* gnu/java/locale/LocaleInformation_ar_DZ.java: New file.
	* gnu/java/locale/LocaleInformation_ar_EG.java: New file.
	* gnu/java/locale/LocaleInformation_ar_IN.java: New file.
	* gnu/java/locale/LocaleInformation_ar_IQ.java: New file.
	* gnu/java/locale/LocaleInformation_ar_JO.java: New file.
	* gnu/java/locale/LocaleInformation_ar_KW.java: New file.
	* gnu/java/locale/LocaleInformation_ar_LB.java: New file.
	* gnu/java/locale/LocaleInformation_ar_LY.java: New file.
	* gnu/java/locale/LocaleInformation_ar_MA.java: New file.
	* gnu/java/locale/LocaleInformation_ar_OM.java: New file.
	* gnu/java/locale/LocaleInformation_ar_QA.java: New file.
	* gnu/java/locale/LocaleInformation_ar_SD.java: New file.
	* gnu/java/locale/LocaleInformation_ar_SY.java: New file.
	* gnu/java/locale/LocaleInformation_ar_TN.java: New file.
	* gnu/java/locale/LocaleInformation_ar_YE.java: New file.
	* gnu/java/locale/LocaleInformation_be_BY.java: New file.
	* gnu/java/locale/LocaleInformation_bn_IN.java: New file.
	* gnu/java/locale/LocaleInformation_br_FR.java: New file.
	* gnu/java/locale/LocaleInformation_bs_BA.java: New file.
	* gnu/java/locale/LocaleInformation_ca_ES.java: New file.
	* gnu/java/locale/LocaleInformation_cs_CZ.java: New file.
	* gnu/java/locale/LocaleInformation_cy_GB.java: New file.
	* gnu/java/locale/LocaleInformation_da_DK.java: New file.
	* gnu/java/locale/LocaleInformation_de_AT.java: New file.
	* gnu/java/locale/LocaleInformation_de_BE.java: New file.
	* gnu/java/locale/LocaleInformation_de_CH.java: New file.
	* gnu/java/locale/LocaleInformation_de_DE.java: New file.
	* gnu/java/locale/LocaleInformation_de_LU.java: New file.
	* gnu/java/locale/LocaleInformation_el_GR.java: New file.
	* gnu/java/locale/LocaleInformation_en_AU.java: New file.
	* gnu/java/locale/LocaleInformation_en_BW.java: New file.
	* gnu/java/locale/LocaleInformation_en_CA.java: New file.
	* gnu/java/locale/LocaleInformation_en_DK.java: New file.
	* gnu/java/locale/LocaleInformation_en_GB.java: New file.
	* gnu/java/locale/LocaleInformation_en_HK.java: New file.
	* gnu/java/locale/LocaleInformation_en_IE.java: New file.
	* gnu/java/locale/LocaleInformation_en_IN.java: New file.
	* gnu/java/locale/LocaleInformation_en_NZ.java: New file.
	* gnu/java/locale/LocaleInformation_en_PH.java: New file.
	* gnu/java/locale/LocaleInformation_en_SG.java: New file.
	* gnu/java/locale/LocaleInformation_en_ZA.java: New file.
	* gnu/java/locale/LocaleInformation_en_ZW.java: New file.
	* gnu/java/locale/LocaleInformation_es_AR.java: New file.
	* gnu/java/locale/LocaleInformation_es_BO.java: New file.
	* gnu/java/locale/LocaleInformation_es_CL.java: New file.
	* gnu/java/locale/LocaleInformation_es_CO.java: New file.
	* gnu/java/locale/LocaleInformation_es_CR.java: New file.
	* gnu/java/locale/LocaleInformation_es_DO.java: New file.
	* gnu/java/locale/LocaleInformation_es_EC.java: New file.
	* gnu/java/locale/LocaleInformation_es_ES.java: New file.
	* gnu/java/locale/LocaleInformation_es_GT.java: New file.
	* gnu/java/locale/LocaleInformation_es_HN.java: New file.
	* gnu/java/locale/LocaleInformation_es_MX.java: New file.
	* gnu/java/locale/LocaleInformation_es_NI.java: New file.
	* gnu/java/locale/LocaleInformation_es_PA.java: New file.
	* gnu/java/locale/LocaleInformation_es_PE.java: New file.
	* gnu/java/locale/LocaleInformation_es_PR.java: New file.
	* gnu/java/locale/LocaleInformation_es_PY.java: New file.
	* gnu/java/locale/LocaleInformation_es_SV.java: New file.
	* gnu/java/locale/LocaleInformation_es_US.java: New file.
	* gnu/java/locale/LocaleInformation_es_UY.java: New file.
	* gnu/java/locale/LocaleInformation_es_VE.java: New file.
	* gnu/java/locale/LocaleInformation_et_EE.java: New file.
	* gnu/java/locale/LocaleInformation_eu_ES.java: New file.
	* gnu/java/locale/LocaleInformation_fa_IR.java: New file.
	* gnu/java/locale/LocaleInformation_fi_FI.java: New file.
	* gnu/java/locale/LocaleInformation_fo_FO.java: New file.
	* gnu/java/locale/LocaleInformation_fr_BE.java: New file.
	* gnu/java/locale/LocaleInformation_fr_CA.java: New file.
	* gnu/java/locale/LocaleInformation_fr_CH.java: New file.
	* gnu/java/locale/LocaleInformation_fr_FR.java: New file.
	* gnu/java/locale/LocaleInformation_fr_LU.java: New file.
	* gnu/java/locale/LocaleInformation_ga_IE.java: New file.
	* gnu/java/locale/LocaleInformation_gd_GB.java: New file.
	* gnu/java/locale/LocaleInformation_gl_ES.java: New file.
	* gnu/java/locale/LocaleInformation_gv_GB.java: New file.
	* gnu/java/locale/LocaleInformation_he_IL.java: New file.
	* gnu/java/locale/LocaleInformation_hi_IN.java: New file.
	* gnu/java/locale/LocaleInformation_hr_HR.java: New file.
	* gnu/java/locale/LocaleInformation_hu_HU.java: New file.
	* gnu/java/locale/LocaleInformation_id_ID.java: New file.
	* gnu/java/locale/LocaleInformation_it_CH.java: New file.
	* gnu/java/locale/LocaleInformation_it_IT.java: New file.
	* gnu/java/locale/LocaleInformation_iw_IL.java: New file.
	* gnu/java/locale/LocaleInformation_ja_JP.java: New file.
	* gnu/java/locale/LocaleInformation_ka_GE.java: New file.
	* gnu/java/locale/LocaleInformation_kl_GL.java: New file.
	* gnu/java/locale/LocaleInformation_ko_KR.java: New file.
	* gnu/java/locale/LocaleInformation_kw_GB.java: New file.
	* gnu/java/locale/LocaleInformation_lt_LT.java: New file.
	* gnu/java/locale/LocaleInformation_lv_LV.java: New file.
	* gnu/java/locale/LocaleInformation_mi_NZ.java: New file.
	* gnu/java/locale/LocaleInformation_mk_MK.java: New file.
	* gnu/java/locale/LocaleInformation_mr_IN.java: New file.
	* gnu/java/locale/LocaleInformation_mt_MT.java: New file.
	* gnu/java/locale/LocaleInformation_nl_BE.java: New file.
	* gnu/java/locale/LocaleInformation_nl_NL.java: New file.
	* gnu/java/locale/LocaleInformation_nn_NO.java: New file.
	* gnu/java/locale/LocaleInformation_no_NO.java: New file.
	* gnu/java/locale/LocaleInformation_oc_FR.java: New file.
	* gnu/java/locale/LocaleInformation_pl_PL.java: New file.
	* gnu/java/locale/LocaleInformation_pt_BR.java: New file.
	* gnu/java/locale/LocaleInformation_pt_PT.java: New file.
	* gnu/java/locale/LocaleInformation_ro_RO.java: New file.
	* gnu/java/locale/LocaleInformation_ru_RU.java: New file.
	* gnu/java/locale/LocaleInformation_ru_UA.java: New file.
	* gnu/java/locale/LocaleInformation_se_NO.java: New file.
	* gnu/java/locale/LocaleInformation_sk_SK.java: New file.
	* gnu/java/locale/LocaleInformation_sl_SI.java: New file.
	* gnu/java/locale/LocaleInformation_sq_AL.java: New file.
	* gnu/java/locale/LocaleInformation_sr_YU.java: New file.
	* gnu/java/locale/LocaleInformation_sv_FI.java: New file.
	* gnu/java/locale/LocaleInformation_sv_SE.java: New file.
	* gnu/java/locale/LocaleInformation_ta_IN.java: New file.
	* gnu/java/locale/LocaleInformation_te_IN.java: New file.
	* gnu/java/locale/LocaleInformation_tg_TJ.java: New file.
	* gnu/java/locale/LocaleInformation_tl_PH.java: New file.
	* gnu/java/locale/LocaleInformation_tr_TR.java: New file.
	* gnu/java/locale/LocaleInformation_uk_UA.java: New file.
	* gnu/java/locale/LocaleInformation_ur_PK.java: New file.
	* gnu/java/locale/LocaleInformation_uz_UZ.java: New file.
	* gnu/java/locale/LocaleInformation_vi_VN.java: New file.
	* gnu/java/locale/LocaleInformation_yi_US.java: New file.
	* gnu/java/locale/LocaleInformation_zh_CN.java: New file.
	* gnu/java/locale/LocaleInformation_zh_HK.java: New file.
	* gnu/java/locale/LocaleInformation_zh_SG.java: New file.
	* gnu/java/locale/LocaleInformation_zh_TW.java: New file.

From-SVN: r48668
2002-01-08 23:56:23 +00:00
Tom Tromey
d9df09cce8 For PR libgcj/5031:
* java/lang/natSystem.cc (init_properties): Use LC_MESSAGES to
	choose default locale.

From-SVN: r48664
2002-01-08 21:59:32 +00:00
Tom Tromey
1e7fcb11d0 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (jv_convert_LDADD): Removed convert_source_files.

From-SVN: r48663
2002-01-08 21:34:59 +00:00
Nic Ferrier
2b521fa72e natPlainSocketImpl.cc: Added timeout handling for sockets.
2002-01-08  Nic Ferrier  <nferrier@tf1.tapsellferrier.co.uk>

	* java/net/natPlainSocketImpl.cc: Added timeout handling for
	sockets.
	(close): New function closes the socket.
	(write): New functions for output to socket.
	(read): New functions for reading from socket.
	* java/net/PlainSocketImpl.java: Glue for new timeout
	implementation.
	(write): Call the native impl.
	(read): Likewise.
	(getInputStream): Get a stream to read from the socket.
	(getOutputStream): Get a stream to write to the socket.

From-SVN: r48662
2002-01-08 21:14:58 +00:00
Tom Tromey
bd917d3a24 * resolve.cc (_Jv_PrepareClass): Enable verifier.
From-SVN: r48660
2002-01-08 20:51:45 +00:00
Andreas Tobler
66839ef65e natMethod.cc: Don't include alloca.h.
2002-01-07  Andreas Tobler <a.tobler@schweiz.ch>

	* java/lang/reflect/natMethod.cc: Don't include alloca.h.
	(_Jv_CallAnyMethodA): Convert alloca to __builtin_alloca.

From-SVN: r48656
2002-01-08 20:00:50 +00:00
Chris Sears
00cc944db9 interpret.cc (ARRAYBOUNDSCHECK): New macro.
2002-01-08  Chris Sears  <cbsears_sf@yahoo.com>

	* interpret.cc (ARRAYBOUNDSCHECK): New macro.
	(continue1) [insn_iaload, insn_laload, insn_faload, insn_daload,
	insn_aaload, insn_baload, insn_caload, insn_saload, insn_iastore,
	insn_lastore, insn_fastore, insn_dastore, insn_aastore,
	insn_bastore, insn_castore, insn_sastore]: Use it.
	(continue1) [insn_arraylength]: Check for null array.

From-SVN: r48652
2002-01-08 19:07:46 +00:00
Andreas Tobler
ebecd56de9 configure, [...]: Rebuilt.
2002-01-06 Andreas Tobler <a.tobler@schweiz.ch>

	* configure, include/config.h.in: Rebuilt.
	* java/lang/natSystem.cc (getSystemTimeZone): Check HAVE_TM_ZONE.
	* configure.in: Call AC_STRUCT_TIMEZONE.

From-SVN: r48588
2002-01-06 21:38:15 +00:00
H.J. Lu
ec6d4fa60c jni.exp: Add -I..
2002-01-05  H.J. Lu <hjl@gnu.org>

	* libjava.jni/jni.exp: Add -I.. for generated header.

From-SVN: r48571
2002-01-05 14:26:58 -08:00
Andreas Tobler
c6c3221d21 configure.host: Disable the interpreter for Darwin.
2002-01-02 Andreas Tobler <a.tobler@schweiz.ch>

	* configure.host: Disable the interpreter for Darwin.

From-SVN: r48557
2002-01-05 04:00:32 +00:00
Tom Tromey
81550d0e5f Thread.java (stop): No longer synchronized.
* java/lang/Thread.java (stop): No longer synchronized.
	(start): Likewise.

From-SVN: r48540
2002-01-04 20:38:20 +00:00
Tom Tromey
95574a4c76 ieeefp.h: Fix bug in my hand-application of previous patch.
* java/lang/ieeefp.h: Fix bug in my hand-application of previous
	patch.

From-SVN: r48475
2002-01-02 15:58:39 +00:00
Andrew Pinski
0beb74f25c 2002-1-1 Andrew Pinski <pinskia@physics.uc.edu>
* libjava/java/lang/ieeefp.h: Define __IEEE_BIG_ENDIAN for
	PPC Darwin, not for all of Darwin.

From-SVN: r48473
2002-01-02 15:07:16 +00:00
Andreas Tobler
6180abdb9d ieeefp.h: Define __IEEE_BIG_ENDIAN for Darwin.
2001-12-29 Andreas Tobler <a.tobler@schweiz.ch>

	* libjava/java/lang/ieeefp.h: Define __IEEE_BIG_ENDIAN for
	Darwin.

From-SVN: r48455
2002-01-01 23:36:11 +00:00
Tom Tromey
e3109d4c17 ObjectInputStream.java (enableResolveObject): Use correct security check.
* java/io/ObjectInputStream.java (enableResolveObject): Use
	correct security check.
	* java/io/ObjectOutputStream.java (enableReplaceObject): Use
	correct security check.

From-SVN: r48256
2001-12-21 22:51:41 +00:00
Tom Tromey
d47eb5d3f2 re PR java/5165 (Loading class fields with a ConstantValue attribute)
Fix for PR java/5165:
	* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass):
	Convert any constant string field to a String; not just final
	fields.

From-SVN: r48255
2001-12-21 21:59:27 +00:00
Tom Tromey
83d9978859 re PR libgcj/2428 (Classloader is not set)
Fix for PR libgcj/2428:
	* java/lang/natClass.cc: Include RuntimePermission.h.
	(getClassLoader): Define.
	* java/lang/Class.h (Class.getClassLoader): Only declare.

From-SVN: r48253
2001-12-21 19:47:50 +00:00
Tom Tromey
e6a8345b03 For PR java/4766:
* libjava.compile/PR4766.java: New file.

From-SVN: r48209
2001-12-20 18:05:20 +00:00
Andrew Haley
76eceb1ec3 FileHandleGcTest.out: New file.
2001-12-20  Andrew Haley  <aph@redhat.com>

	* libjava.lang/FileHandleGcTest.out:  New file.
	* libjava.lang/FileHandleGcTest.java: New file.
	* libjava.lang/Array_3.out: New file.
	* libjava.lang/Array_3.java: New file.

From-SVN: r48201
2001-12-20 14:09:03 +00:00
Tom Tromey
ed178abb75 FlowLayout.java (FlowLayout(), [...]): Set gaps to 5.
* java/awt/FlowLayout.java (FlowLayout(), FlowLayout(int)): Set
	gaps to 5.
	(FlowLayout(int,int,int)): Use methods to set fields.
	(getSize): Skip invisible components.
	(layoutContainer): Skip invisible components.

From-SVN: r48182
2001-12-19 19:38:25 +00:00
Bryce McKinlay
619c238cb9 * boehm.cc (_Jv_BuildGCDescr): Define unconditionally.
From-SVN: r48170
2001-12-19 02:45:20 +00:00
Bryce McKinlay
726abf5d79 jvm.h (_Jv_BuildGCDescr): Declare unconditionally.
* include/jvm.h (_Jv_BuildGCDescr): Declare unconditionally.
	* nogc.cc (_Jv_BuildGCDescr): Define unconditionally.

From-SVN: r48169
2001-12-19 01:59:28 +00:00
Tom Tromey
e964a852b2 CollationElementIterator.java (secondaryOrder): Cast result to `short'.
* java/text/CollationElementIterator.java (secondaryOrder): Cast
	result to `short'.
	(tertiaryOrder): Likewise.

From-SVN: r48162
2001-12-18 17:27:43 +00:00
Tom Tromey
8c5bc4d56e For PR java/3417:
* libjava.compile/PR3417.xfail: New file.
	* libjava.compile/PR3417.java: New file.

From-SVN: r48161
2001-12-18 16:36:40 +00:00
Tom Tromey
40aba207b1 * libjava.lang/PR3731.xfail: Removed.
From-SVN: r48144
2001-12-18 05:18:38 +00:00
Tom Tromey
bf768dd17b Inspired by PR java/5057:
* libjava.lang/PR5057_2.java: New file.
	* libjava.lang/PR5057_2.out: New file.

From-SVN: r48142
2001-12-18 04:59:18 +00:00
Tom Tromey
ced816d5e6 For PR java/5057:
* libjava.lang/PR5057.out: New file.
	* libjava.lang/PR5057.java: New file.

From-SVN: r48141
2001-12-18 04:38:04 +00:00
Tom Tromey
04942eac9b For PR libgcj/5103:
* include/jvm.h (__GCJ_JNI_IMPL__): Define.
	* include/config.h.in: Rebuilt.
	* configure: Rebuilt.
	* configure.in: Define JV_HAVE_INTTYPES_H if inttypes.h found.
	Added comment for HAVE_DLOPEN to avoid autoheader error.
	* gcj/libgcj-config.h.in (JV_HAVE_INTTYPES_H): Added.
	* include/jni.h: Include <gcj/libgcj-config.h>.  Don't include
	CNI-specific headers if we are compiling ordinary JNI code with a
	C++ compiler.  Include <inttypes.h> and JNIWeakRef.h when
	appropriate.
	* jni.cc: Don't include JNIWeakRef.h.

From-SVN: r48082
2001-12-16 22:33:02 +00:00
Tom Tromey
68940f3f3c For PR java/5088:
* java/lang/natClassLoader.cc (_Jv_InitNewClassFields): New
	function.
	(_Jv_NewClass): Use it.
	(defineClass0): Use it.
	* prims.cc (_Jv_InitPrimClass): Adjust vtable here.
	(_Jv_InitPrimClass): Use _Jv_InitNewClassFields.
	(_Jv_NewArray): Don't abort; just throw exception.
	Include InternalError.h.
	* java/lang/Class.h (Class::Class): Declare, don't define.
	(Class): Declare _Jv_InitNewClassFields as a friend.
	(union _Jv_Self): Removed.

From-SVN: r48081
2001-12-16 22:28:35 +00:00
Tom Tromey
495513eea6 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Removed old file;
	added new file.
	* gnu/java/math/MPN.java: New file.
	* gnu/gcj/math/MPN.java: Removed.
	* java/math/BigInteger.java: Merged with Classpath.

From-SVN: r48080
2001-12-16 22:25:14 +00:00
Bryce McKinlay
1e2bba3565 DataOutputStream (write (byte[], int, int)): Update "written" correctly.
* java/io/DataOutputStream (write (byte[], int, int)): Update
	"written" correctly. Fix from the ORP team.

From-SVN: r48050
2001-12-16 00:14:57 +00:00
Bryce McKinlay
861ef92859 java-tree.h (otable_methods, [...]): New field/global tree definitions.
gcc/java:

	* java-tree.h (otable_methods, otable_decl, otable_syms_decl,
	otable_type, otable_ptr_type, method_symbol_type,
	method_symbols_array_type, method_symbols_array_ptr_type): New
	field/global tree definitions.
	(flag_indirect_dispatch): New flag.
	* decl.c (java_init_decl_processing): Initialize new otable and
	otable_syms type nodes and decls. Add new field "index" to
	method_type_node.
	* class.c (build_method_symbols_entry): New function.
	(make_method_value): Set "index" to to method's vtable index for
	virtual methods when indirect-dispatch is not used.
	(make_class_data): For indirect-dispatch, dont emit the dtable_decl,
	and set vtable_method_count to -1. Set otable and otable_syms field
	if indirect-dispatch is used and there was something to put in them.
	(build_method_symbols_entry): New function.
	(emit_offset_symbol_table): New function.
	* expr.c (get_offset_table_index): New function.
	(build_invokevirtual): Build array reference to otable at the index
	returned by get_offset_table_index, and use the result as the vtable
	offset.
	(build_invokeinterface): Similar.
	* jcf-parse.c (yyparse): If indirect-dispatch, call
	emit_offset_symbol_table at the end of compilation, after all classes
	have been generated.
	* jvspec.c: Don't pass findirect-dispatch to jvgenmain.
	* lang.c (flag_indirect_dispatch): Define.
	(lang_f_options): Add indirect-dispatch flag.

libjava:

	* include/jvm.h (_Jv_VTable::idx_to_offset): New method.
	* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Call
	_Jv_MakeVTable and _Jv_LinkOffsetTable if needed.
	* java/lang/Class.h (_Jv_Method): Add "index" field.
	(_Jv_MethodSymbol): New struct type.
	(_Jv_LinkOffsetTable, _Jv_LayoutVTableMethods, _Jv_SetVTableEntries,
	_Jv_MakeVTable): Friends.
	(otable, otable_syms): New Class fields.
	* java/lang/natClass.cc (_Jv_LinkOffsetTable): New function.
	(isVirtualMethod): New static function.
	(_Jv_LayoutVTableMethods): New function.
	(_Jv_SetVTableEntries): New function.
	(_Jv_MakeVTable): New function.

From-SVN: r48038
2001-12-15 08:31:49 +00:00
Bryce McKinlay
d9fd7154ec Collections drop from Classpath:
2001-12-15  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/BitSet.java (and): Fix off-by-one bug, don't skip part of
	the bitset.
	(andNot): Likewise.
	(xor): Likewise.

2001-12-15  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/LinkedList.java (LinkedListItr.add): Don't skip the next
	entry.

2001-12-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/TreeMap.java (removeNode): Fix bug in node removal.

2001-12-15  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/AbstractCollection.java (containsAll): Use size of the
	correct collection for loop bound.
	* java/util/AbstractList.java (iterator.next): Increment pos after
	calling get on backing list.
	(listIterator.next): Likewise.
	* java/util/LinkedList.java (addLastEntry): Don't increment size before
	checking for size == 0.
	(addFirstEntry): Rearrange to match addLastEntry.
	(add): Do not increment size before inserting the new entry.

	* java/util/AbstractCollection.java (addAll): Use size of the
	correct collection for loop bound.

2001-12-15  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>

	* java/util/AbstractSet.java (removeAll): Fix scoping thinko.
	* java/util/HashMap.java (putAllInternal): Set size here.
	* java/util/Hashtable.java (putAllInternal): New method. Copy contents
	of a map efficiently without calling put() or putAll().
	(Hashtable (map)): Use putAllInternal.
	(clone): Likewise.

2001-12-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/Collections.java:
	* java/util/Vector.java:
	* java/util/WeakHashMap.java: Fix spelling errors.

2001-12-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/AbstractCollection.java (removeAllInternal),
	(retainAllInternal): Add hooks for use by ArrayList.
	* java/util/AbstractList.java: Minor code updates. Fix some
	scoping.
	* java/util/AbstractMap.java: ditto
	* java/util/ArrayList.java (readObject, writeObject): ditto
	(removeAllInternal, retainAllInternal): Optimize.
	* java/util/Arrays.java: ditto
	* java/util/Collections.java: ditto. Change order of parameters
	to equals(Object, Object) to match specs.
	* java/util/Dictionary.java: Improve javadoc.
	(Dictionary): Add explicit constructor.
	* java/util/HashMap.java: Improve javadoc. Rearrange methods to
	follow order in JDK. Cleanups related to recent code migration to
	AbstractMap. Fix some scoping.
	(entrySet): Cache the result.
	(modCount): Ensure that this is updated correctly.
	* java/util/HashSet.java: Improve javadoc. Fix some scoping.
	(init): Add hooks for LinkedHashSet.
	(map): Use "" instead of Boolean.TRUE in backing map. Use
	package-private API where possible for less overhead.
	(readObject, writeObject): Fix serialization.
	* java/util/Hashtable.java: Improve javadoc. Fix some scoping.
	(entrySet, keySet, values): Cache the result.
	(modCount): Ensure that this is updated correctly.
	(contains, remove): Fix NullPointer checking to match specs.
	(class Enumeration): Make more like HashIterator.
	* java/util/IdentityHashMap.java: Minor code updates.
	(modCount): Ensure that this is updated correctly.
	(readObject, writeObject): Fix serialization.
	* java/util/LinkedHashMap.java: Minor code updates. Cleanups
	related to recent code migration to AbstractMap.
	* java/util/LinkedHashSet.java: New file.
	* java/util/LinkedList.java:
	(readObject, writeObject): Fix serialization.
	* java/util/Makefile.am: List recently added files.
	* java/util/Stack.java: Minor code updates.
	* java/util/TreeMap.java: Improve javadoc. Overhaul the class to
	be more efficient. Fix some scoping. Rearrange the methods.
	(nil): Ensure that this can be thread-safe, and make it a static
	final. Initialize it to be more useful as a sentinal node.
	(Node): Specify color in constructor.
	(deleteFixup, insertFixup): Improve comments and algorithm.
	(fabricateTree): Redesign with less overhead.
	(lowestGreaterThan): Add parameter first to make SubMap easier.
	(removeNode): Patch hole where nil was being modified. Choose
	predecessor instead of successor so in-place swap works.
	(class VerifyResult, verifyTree, verifySub, verifyError): Remove
	this dead code after verifying the class works.
	(class SubMap): Rewrite several algorithms to avoid problems with
	comparing nil.
	* java/util/TreeSet.java: Improve javadoc. Fix some scoping.
	(clone): Fix ClassCastException when cloning subSet().
	(readObject, writeObject): Fix serialization.
	* java/util/WeakHashMap.java: Improve javadoc. Fix some scoping.
	(NULL_KEY): Make it compare as null, for ease elsewhere.
	(Class WeakEntry): Rename from Entry, to avoid shadowing
	Map.Entry. Add missing toString.
	(modCount): Ensure that this is updated correctly.
	(clear, containsValue, keySet, putAll, values, WeakHashMap(Map)):
	Add missing methods and constructor.

2001-12-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/ArrayList.java (checkBoundExclusive),
	(checkBoundInclusive): Rename from range??clusive, to match
	AbstractList.
	* java/util/LinkedList.java (checkBoundsExclusive),
	(checkBoundsInclusive): ditto
	* java/util/Vector.java (checkBoundExclusive),
	(checkBoundInclusive): Move bounds checking into common methods.

2001-12-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/AbstractList.java:
	(modCount): Make sure it is updated in all needed places.
	* java/util/ArrayList.java: Improve javadoc. Implements
	RandomAccess. Add serialVersionUID. Reorder methods.
	(modCount): Make sure it is updated in all needed places.
	(rangeExclusive, rangeInclusive): Add common methods for bounds
	check.
	(isEmpty): Add missing method.
	* java/util/Collections.java: (class SynchronizedList): Make
	package visible.
	* java/util/ConcurrentModificationException.java: Improve
	javadoc.
	* java/util/EmptyStackException.java: Improve javadoc.
	* java/util/LinkedList.java: Improve javadoc.
	(modCount): Make sure it is updated in all needed places.
	(rangeExclusive, rangeInclusive): Add common methods for bounds
	check.
	* java/util/NoSuchElementException.java: Improve javadoc.
	* java/util/Stack.java: Improve javadoc. Fix synchronization
	issues.
	(modCount): Make sure it is updated in all needed places.
	* java/util/Vector.java: Improve javadoc. Fix synchronization
	issues. Implements RandomAccess. Reorder methods.
	(modCount): Make sure it is updated in all needed places.
	(setSize): Fix according to specifications: this does not dictate
	the backing array size.
	(removeAll, retainAll): Faster implementations.

2001-12-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/BitSet.java: Improve javadoc.
	(cardinality(), clear(), clear(int, int), flip(int)),
	(flip(int, int), get(int, int), intersects(BitSet), isEmpty()),
	(nextClearBit(int), nextSetBit(int), set(int, boolean)),
	(set(int, int), set(int, int, boolean)): Add new JDK 1.4 methods.
	(clone): Fix so subclasses clone correctly.

2001-12-15  Eric Blake  <ebb9@email.byu.edu>

	* java/util/AbstractCollection.java: Improve javadoc.
	(AbstractCollection()): Make constructor protected.
	(equals(Object, Object), hashCode(Object)): Add utility methods.
	* java/util/AbstractList.java: Improve javadoc.
	(AbstractList()): Make constructor protected.
	(indexOf(Object)): Call listIterator(), not listIterator(int).
	(iterator()): Follow Sun's requirement to not use listIterator(0).
	(listIterator(int)): Make AbstractListItr anonymous.
	(subList(int, int)): Add support for RandomAccess.
	(SubList.add(int, Object), SubList.remove(Object)): Fix bug with
	modCount tracking.
	(SubList.addAll(Collection)): Add missing method.
	(SubList.listIterator(int)): Fix bugs in indexing, modCount
	tracking.
	(class RandomAccessSubList): Add new class.
	* java/util/AbstractMap.java: Improve javadoc.
	(keys, values, KEYS, VALUES, ENTRIES): Consolidate common map
	fields.
	(AbstractMap()): Make constructor protected.
	(equals(Object, Object), hashCode(Object)): Add utility methods.
	(equals(Object)): Change algorithm to
	entrySet().equals(m.entrySet()), as documented by Sun.
	(keySet(), values()): Cache the collections.
	* java/util/AbstractSequentialList.java: Improve javadoc.
	(AbstractSequentialList()): Make constructor protected.
	* java/util/AbstractSet.java: Improve javadoc.
	(AbstractSet()): Make constructor protected.
	(removeAll(Collection)): Add missing method.
	* java/util/Arrays.java: Improve javadoc, rearrange method orders.
	(defaultComparator): Remove, in favor of
	Collections.compare(Object, Object, Comparator).
	(binarySearch, equals, sort): Fix natural order comparison of
	floats and doubles. Also improve Object comparison - when
	comparator is null, use natural order.
	(fill, sort): Add missing checks for IllegalArgumentException.
	(sort, qsort): Fix sorting bugs, rework the code for more
	legibility.
	(mergeSort): Inline into sort(Object[], int, int, Comparator).
	(class ArrayList): Rename from ListImpl, and make compatible with
	JDK serialization. Add methods which more efficiently override
	those of AbstractList.
	* java/util/Collections: Improve javadoc.
	(isSequential(List)): Add and use a method for deciding between
	RandomAccess and sequential algorithms on lists.
	(class Empty*, class Synchronized*, class Unmodifiable*): Make
	compliant with JDK serializability.
	(class Singleton*, class CopiesList, class RevereseComparator),
	(class UnmodifiableMap.UnmodifiableEntrySet),
	(class *RandomAccessList): New classes for serial compatibility.
	(class Empty*, class Singleton*, class CopiesList): Add methods
	which more efficiently override those of Abstract*.
	(search): Inline into binarySearch(List, Object, Comparator).
	(binarySearch): Make sequential search only do log(n) comparisons,
	instead of n.
	(copy(List, List)): Do bounds checking before starting.
	(indexOfSubList, lastIndexOfSubList, list, replaceAll, rotate),
	(swap):	Add new JDK 1.4 methods.
	(binarySearch, max, min, sort): Allow null comparator to represent
	natural ordering.
	(reverse(List)): Avoid unnecessary swap.
	(shuffle(List, Random)): Do shuffle in-place for RandomAccess
	lists.
	(SingletonList.get): Fix logic bug.
	(SingletonMap.entrySet): Make the entry immutable, and cache the
	returned set.
	(SynchronizedCollection, SynchronizedMap, UnmodifiableCollection),
	(UnmodifiableMap): Detect null pointer in construction.
	(SynchronizedMap, UnmodifiableMap): Cache collection views.
	* java/util/BasicMapEntry: Improve javadoc.

From-SVN: r48035
2001-12-15 07:47:03 +00:00
Tom Tromey
1808372b58 For PR libgcj/5103:
* libjava.jni/cxxtest.out: New file.
	* libjava.jni/cxxtest.cc: New file.
	* libjava.jni/cxxtest.java: New file.
	* libjava.jni/jni.exp (gcj_jni_test_one): If there is no .c file,
	assume there is a .cc file.

From-SVN: r48012
2001-12-14 21:56:29 +00:00
Hans Boehm
938f37772e prims.cc: Some old cleanups.
* libjava/prims.cc: Some old cleanups.  The collector now
	handles test for out of memory.
	* libjava/prims.cc, libjava/gcj/javaprims.h:
	(_Jv_AllocObjectNoInitNoFinalizer, _Jv_AllocObjectNoFinalizer):
	New functions for finalizer-free allocation.
	(jvmpi_notify_alloc): Became separate function.
	* libjava/java/lang/Object.h, libjava/include/jvm.h: Adjust for
	revised vtable layout on IA64.  With TARGET_VTABLE_USES_DESCRIPTORS,
	there is only one extra descriptor.

From-SVN: r48002
2001-12-14 18:43:55 +00:00
Tom Tromey
4e41d14893 prims.cc (_Jv_RunMain): Use `using' to simplify code.
* prims.cc (_Jv_RunMain): Use `using' to simplify code.  Set
	_Jv_Jar_Class_Path early.

From-SVN: r47965
2001-12-13 04:19:36 +00:00
Tom Tromey
415791dba8 * jni.cc (call): Synchronize if required.
From-SVN: r47949
2001-12-12 20:58:41 +00:00
Tom Tromey
242f4945ac * gij.cc (main): Clarify --help output.
From-SVN: r47948
2001-12-12 20:56:08 +00:00
Tom Tromey
a46ce590a8 * gnu/gcj/runtime/StringBuffer.java
(ensureCapacity_unsynchronized): Ensure we always get at least
	`minimumCapacity' characters in new buffer.

From-SVN: r47940
2001-12-12 16:50:01 +00:00
Tom Tromey
50cc5dd29b String.java (String): New constructor.
* java/lang/String.java (String): New constructor.
	* gnu/gcj/runtime/natStringBuffer.cc: New file.
	* gnu/gcj/runtime/StringBuffer.java: New file.
	* Makefile.in: Rebuilt.
	* Makefile.am (ordinary_java_source_files): Added
	gnu/gcj/runtime/StringBuffer.java.
	(nat_source_files): Added gnu/gcj/runtime/natStringBuffer.cc.

From-SVN: r47883
2001-12-11 18:01:40 +00:00
Tom Tromey
1ca1c91bd9 For PR libgcj/1147:
* prims.cc (JvConvertArgv): Convert using current locale's
	encoding.

From-SVN: r47862
2001-12-11 04:03:57 +00:00
Tom Tromey
d12a187337 re PR libgcj/5064 (java/lang/natClassLoader.cc doesn't compile on systems without snprintf)
Fix for PR libgcj/5064.
	* java/lang/natClassLoader.cc: Don't include stdio.h.
	(_Jv_RegisterClassHookDefault): Don't use snprintf.

From-SVN: r47861
2001-12-11 03:58:40 +00:00
Per Bothner
6cc49add9c * gnu/gcj/xlib/XImage.java (toString): Add missing initialization.
From-SVN: r47834
2001-12-09 23:59:48 -08:00
Tom Tromey
6d8b12448d resolve.cc (_Jv_PrepareClass): Verify method here...
* resolve.cc (_Jv_PrepareClass): Verify method here...
	* defineclass.cc (handleMethodsEnd): ... not here.
	* verify.cc (_Jv_BytecodeVerifier::initialize_stack): New method.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_return]: Ensure
	there are no uninitialized objects.
	(_Jv_BytecodeVerifier::state::this_type): New field.
	(_Jv_BytecodeVerifier::state::state): Initialize this_type.
	(_Jv_BytecodeVerifier::state::copy): Copy this_type.
	(_Jv_BytecodeVerifier::state::merge): Merge this_type.
	(_Jv_BytecodeVerifier::state::check_no_uninitialized_objects):
	Handle this_type.
	(_Jv_BytecodeVerifier::state::check_this_initialized): New
	method.
	(_Jv_BytecodeVerifier::state::set_initialized): Handle this_type.
	(_Jv_BytecodeVerifier::state::set_this_type): New method.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_putfield]: Allow
	assignment to fields of `this' before another initializer is run.

From-SVN: r47826
2001-12-10 01:18:30 +00:00
Tom Tromey
cca9fe755e Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (gnu/gcj/runtime/VMClassLoader.h): Use `::java'.

From-SVN: r47824
2001-12-10 00:30:24 +00:00
Bryce McKinlay
f13ff1ca42 re PR java/3731 (gcj should generate class init code for instanceof)
* libjava.lang/PR3731.out: Adjust output to reflect that
	"instanceof" shouldn't trigger class initialization.

From-SVN: r47822
2001-12-09 23:49:29 +00:00
Tom Tromey
91c6dda6c7 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (java/lang/reflect/Method.h): ObjectInputStream now
	a friend.
	* java/lang/natClass.cc (getSignature): Only look at elements of
	non-null parameters.
	(getPrivateMethod): Removed old FIXME comment.
	* java/io/natObjectInputStream.cc (allocateObject): Removed old
	FIXME comment.
	(callConstructor): Simply use `NULL' for value of parameters.
	(ObjectClass): Removed.
	(ClassClass): Likewise.
	* java/io/ObjectInputStream.java (readObject): Fixed typo.

From-SVN: r47800
2001-12-09 00:17:07 +00:00
Tom Tromey
3297bb4667 verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow): Handle case of array whose component type is not prepared.
* verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow):
	Handle case of array whose component type is not prepared.

From-SVN: r47799
2001-12-09 00:14:00 +00:00
Tom Tromey
941a878b35 ClassLoader.java (defineClass): Rethrow any LinkageError.
* java/lang/ClassLoader.java (defineClass): Rethrow any
	LinkageError.

From-SVN: r47780
2001-12-07 23:34:12 +00:00
Tom Tromey
cb47fb054c ThreadGroup.java (uncaughtException): Print message to System.err.
* java/lang/ThreadGroup.java (uncaughtException): Print message to
	System.err.  Required by spec.

From-SVN: r47779
2001-12-07 23:32:24 +00:00
Tom Tromey
286f759e56 verify.cc (_Jv_BytecodeVerifier::branch_prepass): Set start_PC earlier, for error handling.
* verify.cc (_Jv_BytecodeVerifier::branch_prepass): Set start_PC
	earlier, for error handling.
	(_Jv_BytecodeVerifier::note_branch_target): Fixed branch target
	check.

From-SVN: r47769
2001-12-07 19:53:34 +00:00
Tom Tromey
21366e6fe5 verify.cc (_Jv_BytecodeVerifier::FLAG_JSR_TARGET): Removed.
* verify.cc (_Jv_BytecodeVerifier::FLAG_JSR_TARGET): Removed.
	(_Jv_BytecodeVerifier::note_branch_target): Likewise.

From-SVN: r47745
2001-12-07 03:30:47 +00:00
Tom Tromey
e94c6dee73 * libjava.compile/BlankFinal.java: Removed; incorrect test.
From-SVN: r47739
2001-12-07 00:12:56 +00:00
Tom Tromey
c1bf99a2ab verify.cc (_Jv_BytecodeVerifier::type_val): Added unused_by_subroutine_type.
* verify.cc (_Jv_BytecodeVerifier::type_val): Added
	unused_by_subroutine_type.
	(_Jv_BytecodeVerifier::type::merge): Handle
	unused_by_subroutine_type.
	(_Jv_BytecodeVerifier::state::state): Added `ret_semantics'
	argument.
	(_Jv_BytecodeVerifier::state::copy): Likewise.
	(_Jv_BytecodeVerifier::push_jump_merge): Pass `ret_semantics' to
	state constructor.
	(_Jv_BytecodeVerifier::state::is_unmerged_ret_state): New method.
	(_Jv_BytecodeVerifier::pop_jump): Don't accept a jump which is
	from an unmerged ret.
	(_Jv_BytecodeVerifier::verify_instructions_0): Don't let an
	unmerged ret state skip verification in the fall-through case.
	(debug_print): New function.
	(_Jv_BytecodeVerifier::type::print): New method.
	(_Jv_BytecodeVerifier::state::print): New method.
	(_Jv_BytecodeVerifier::push_jump_merge): Print state.
	(_Jv_BytecodeVerifier::verify_instructions_0): Likewise.
	(_Jv_BytecodeVerifier::get_variable): Don't call note_variable.
	(_Jv_BytecodeVerifier::_Jv_BytecodeVerifier): Print debug
	information.

From-SVN: r47734
2001-12-06 23:06:11 +00:00
Tom Tromey
82ae782274 defineclass.cc (character): Removed.
* defineclass.cc (character): Removed.
	(prepare_character): Removed.
	(is_identifier_start): Use Character, not character.
	(is_identifier_part): Likewise.

From-SVN: r47684
2001-12-05 19:28:16 +00:00
Tom Tromey
0c88d7f819 verify.cc (_Jv_BytecodeVerifier::linked_utf8): New structure.
* verify.cc (_Jv_BytecodeVerifier::linked_utf8): New structure.
	(_Jv_BytecodeVerifier::utf8_list): New field.
	(_Jv_BytecodeVerifier::_Jv_BytecodeVerifier): Initialize it.
	(_Jv_BytecodeVerifier::~_Jv_BytecodeVerifier): Free it.
	(_Jv_BytecodeVerifier::make_utf8_const): New method.
	(_Jv_BytecodeVerifier::get_one_type): Use it.
	(_Jv_BytecodeVerifier::type::merge): When using local semantics,
	if the destination type is already unsuitable then we didn't
	change.

From-SVN: r47634
2001-12-04 23:54:43 +00:00
Tom Tromey
ef9f3bc449 defineclass.cc (read_one_method_attribute): `end_pc' for an exception can be equal to code length.
* defineclass.cc (read_one_method_attribute): `end_pc' for an
	exception can be equal to code length.
	* verify.cc (_Jv_BytecodeVerifier::verify_instructions_0): Removed
	`start_PC' from error invocation where it didn't make sense, and
	updated error message.  Use `copy' to copy a state.  Only try to
	merge current state with saved state when we've fallen through
	from the previous instruction.
	(_Jv_BytecodeVerifier::pop_ref_or_return): New method.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_astore_0]: Use
	pop_ref_or_return.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_astore]:
	Likewise.
	(_Jv_BytecodeVerifier::push_jump_merge): Pass max_locals, not
	max_stack, to merge.
	(_Jv_BytecodeVerifier::verify_instructions_0): Likewise.
	(_Jv_BytecodeVerifier::push_jump_merge): Merge from new state into
	state at branch target, not vice versa.
	(_Jv_BytecodeVerifier::branch_prepass): Allow end of exception to
	be equal to code length.  Removed redundant test to see if
	exception start is after exception end.
	(_Jv_BytecodeVerifier::verify_instructions_0): Type of argument to
	`finally' is Throwable.

From-SVN: r47623
2001-12-04 20:18:35 +00:00
Bryce McKinlay
83de3bc47f * Makefile.in: Rebuilt with automake-gcj.
From-SVN: r47593
2001-12-04 07:21:25 +00:00
Tom Tromey
64d3a1b48e defineclass.cc (handleMethodsEnd): Invoke verifier here...
* defineclass.cc (handleMethodsEnd): Invoke verifier here...
	(handleCodeAttribute): ... not here.
	* verify.cc (_Jv_BytecodeVerifier::state::state): Use `copy', not
	structure assignment.

From-SVN: r47591
2001-12-04 06:37:53 +00:00
Bryce McKinlay
c4d7a90e8a Makefile.am (nat_files, [...]): Make sure the dependencies don't get deleted if compilation fails.
* Makefile.am (nat_files, x_nat_files): Make sure the dependencies
	don't get deleted if compilation fails.
	* Makefile.in: Rebuilt.

From-SVN: r47520
2001-12-02 04:29:16 +00:00
Bryce McKinlay
fc6e87b33f Remove ">>>"
From-SVN: r47472
2001-11-30 03:05:09 +00:00
Bryce McKinlay
9dd668d2fc Makefile.am (nat_headers, [...]): Depend on .class files, not libgcj.jar.
* Makefile.am (nat_headers, x_nat_headers): Depend on .class files, not
	libgcj.jar.
	(nat_files, x_nat_files): Build native files in subdirectories using
	the same dependency options as the java files.
	(gnu/gcj/runtime/FirstThread.h): Remove explicit rule and friend
	declarations.
	* configure.in: Put dependencies for .cc files in deps.mak.
	* Makefile.in: Rebuilt.
	* configure: Rebuilt.

From-SVN: r47471
2001-11-30 03:04:01 +00:00
Tom Tromey
bea31ffbcb Fix for PR libgcj/2024, plus other class name cleanups:
* include/jvm.h (_Jv_VerifyFieldSignature,
	_Jv_VerifyMethodSignature, _Jv_VerifyClassName,
	_Jv_VerifyIdentifier, _Jv_ClassNameSamePackage): Moved from ...
	* include/java-interp.h: ... here.
	* defineclass.cc (UTF8_PEEK): No longer conditional on
	interpreter.
	(_Jv_VerifyOne): Likewise.
	(_Jv_VerifyFieldSignature): Likewise.
	(_Jv_VerifyMethodSignature): Likewise.
	(is_identifier_start): Likewise.
	(is_identifier_part): Likewise.
	(_Jv_VerifyIdentifier): Likewise.
	(_Jv_VerifyClassName): Likewise.
	(_Jv_VerifyClassName): Likewise.
	(_Jv_ClassNameSamePackage): Likewise.
	(_Jv_VerifyClassName): Fail if class name is too long.
	* java/lang/natClassLoader.cc (_Jv_NewArrayClass): Disallow array
	of void.
	* java/lang/natClass.cc (forName): Check syntax of class name.
	Include IllegalArgumentException.h.

From-SVN: r47334
2001-11-26 06:40:06 +00:00
Tom Tromey
fa88ce26e5 verify.cc (_Jv_BytecodeVerifier::branch_prepass): Use java_opcode as type for switch.
* verify.cc (_Jv_BytecodeVerifier::branch_prepass): Use
	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.

From-SVN: r47330
2001-11-25 19:48:19 +00:00
Tom Tromey
200f4143a2 re PR libgcj/4583 (problems BigDecimal(double) ctor.)
Fix for PR libgcj/4583:
	* java/math/BigDecimal.java (BigDecimal(double)): Rewrote.
	(BigDecimal(String)): Likewise.

From-SVN: r47329
2001-11-25 19:32:28 +00:00
Tom Tromey
8051c3d633 verify.cc (_Jv_BytecodeVerifier::branch_prepass): Uses two operand bytes, not one.
* 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.

From-SVN: r47202
2001-11-20 05:16:17 +00:00
Tom Tromey
1578fa9545 verify.cc (_Jv_BytecodeVerifier::require_array_type): Special case for boolean arrays.
* verify.cc (_Jv_BytecodeVerifier::require_array_type): Special
	case for boolean arrays.

	* verify.cc (_Jv_BytecodeVerifier::compute_jump): Put PC into
	error message.

From-SVN: r47190
2001-11-20 00:38:40 +00:00
Tom Tromey
94e1e142fa verify.cc (_Jv_BytecodeVerifier::verify_instructions_0): Shift argument is an int, not a long.
* verify.cc (_Jv_BytecodeVerifier::verify_instructions_0)
	[op_lshl, op_lshr, op_lushr]: Shift argument is an int, not a
	long.

From-SVN: r47177
2001-11-19 18:28:28 +00:00
Tom Tromey
d68e5f555d verify.cc (type::to_array): New method.
* verify.cc (type::to_array): New method.
	(_Jv_BytecodeVerifier::verify_instructions_0) [op_anewarray]:
	Construct new array type.

From-SVN: r47165
2001-11-19 07:08:36 +00:00
Tom Tromey
7db43d37b1 verify.cc (_Jv_BytecodeVerifier::branch_prepass): Skip a short, not a byte.
* verify.cc (_Jv_BytecodeVerifier::branch_prepass) [op_sipush]:
	Skip a short, not a byte.
	[op_newarray]: Skip a byte, not a short.

From-SVN: r47163
2001-11-19 02:13:08 +00:00
Tom Tromey
4c6d901a76 verify.cc (_Jv_BytecodeVerifier::get_type_val_for_signature): Added `B' case.
* verify.cc (_Jv_BytecodeVerifier::get_type_val_for_signature):
	Added `B' case.

From-SVN: r47162
2001-11-19 01:37:28 +00:00
Tom Tromey
590077b070 verify.cc (_Jv_BytecodeVerifier::get_ushort): Use `jint' for temporary values.
* verify.cc (_Jv_BytecodeVerifier::get_ushort): Use `jint' for
	temporary values.
	(_Jv_BytecodeVerifier::get_short): Likewise.
	(_Jv_BytecodeVerifier::get_int): Likewise.
	(_Jv_BytecodeVerifier::check_return_type): Reverse ordering of
	`compatible' call.

From-SVN: r47161
2001-11-19 01:04:15 +00:00
Tom Tromey
e7b35eec24 verify.cc (_Jv_BytecodeVerifier::pop_type): Put PC into error message.
* verify.cc (_Jv_BytecodeVerifier::pop_type): Put PC into error
	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.

From-SVN: r47158
2001-11-19 00:31:37 +00:00
Tom Tromey
604407070b verify.cc: Include StringBuffer.h.
* verify.cc: Include StringBuffer.h.
	(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.

From-SVN: r47155
2001-11-18 23:04:28 +00:00
Anthony Green
aee4201707 Obvious jni weak reference fix
From-SVN: r47128
2001-11-17 21:32:22 +00:00
Tom Tromey
b34e9a5b9f verify.cc (_Jv_BytecodeVerifier::check_field_constant): Handle case where field has primitive type.
* verify.cc (_Jv_BytecodeVerifier::check_field_constant): Handle
	case where field has primitive type.

From-SVN: r47112
2001-11-16 23:39:34 +00:00
Tom Tromey
f6b733ed1f verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow): New method.
* verify.cc (_Jv_BytecodeVerifier::is_assignable_from_slow): New
	method.
	(type::compatible): Use it.
	(type::merge): Likewise.
	(type::promote): Return a `type&'.
	(get_one_type): Promote return value.

From-SVN: r47097
2001-11-16 19:59:16 +00:00
Tom Tromey
54b6b24152 Re-merge with Classpath, from Brian Jones:
* java/lang/Integer.java (getInteger): Attempt to decode the value
	of the system property instead of the name of the system property.
	(parseInt): Throw NumberFormatException explicitly in the case of
	a null argument in keeping with JDK 1.3.

From-SVN: r47095
2001-11-16 19:52:24 +00:00
Mark Wielaard
74808218ae Timer.java (TaskQueue.isStopped): Remove method.
* java/util/Timer.java (TaskQueue.isStopped): Remove method.
	(Scheduler.run): Try to re-schedule task and ignore exception if
	queue has been stopped.

From-SVN: r47093
2001-11-16 19:00:47 +00:00
Tom Tromey
f50e7a2d92 verify.cc (type::compatible): Use _Jv_IsAssignableFrom.
* verify.cc (type::compatible): Use _Jv_IsAssignableFrom.
	(type::merge): Likewise.

From-SVN: r47077
2001-11-16 01:28:55 +00:00