gcc/libjava
Roger Sayle 4fa26a6079 flags.h (flag_wrapv): New flag controlling overflow semantics.
* flags.h (flag_wrapv): New flag controlling overflow semantics.
	* toplev.c (flag_wrapv): Declare the variable with default false.
	(lang_independent_options): New option "-fwrapv" to set the above.

	* fold-const.c (extract_muldiv_1): Disable optimization of (2*x)/2
	as x, when signed arithmetic overflow wraps around.
	(fold): Optimize "-A - B" as "-B - A" if overflow wraps around.
	* loop.c (basic_induction_var): Ignore BIVs that rely on undefined
	overflow when flag_wrapv is true.

	* java/lang.c (java_init_options): Prescribe wrap-around two's
	complement arithmetic overflow by setting flag_wrapv.

	* doc/invoke.texi: Document new -fwrapv command line option.
	* doc/c-tree.texi: Mention that the overflow semantics of
	NEGATE_EXPR, PLUS_EXPR, MINUS_EXPR and MULT_EXPR is dependent
	upon both flag_wrapv and flag_trapv.

	* gcc.dg/fwrapv-1.c: New test case.
	* gcc.dg/fwrapv-2.c: New test case.

	* libjava.lang/Overflow.java: New test.
	* libjava.lang/Overflow.out: New file.

From-SVN: r67270
2003-05-31 13:23:32 +00:00
..
doc except.c (choose_personality_routine): Export. 2001-05-13 01:28:18 +00:00
gcj Makefile.in: Rebuilt. 2003-02-24 02:15:43 +00:00
gnu ByteBufferImpl.java, [...]: Moved files to java/nio. 2003-05-20 08:58:31 +00:00
include jvm.h: (_Jv_GetNbArgs) added (_Jv_GetSafeArg) added (_Jv_SetArgs) added 2003-04-25 16:48:13 +00:00
java 2003-05-27 Michael Koch <konqueror@gmx.de> 2003-05-27 06:34:29 +00:00
javax ButtonUI.java, [...]: New versions from classpath. 2003-05-10 08:14:36 +00:00
jni XToolkit.java (getFontMetrics): initialize if necessary. 2003-02-19 00:35:35 +00:00
libltdl libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on mips*. 2003-04-11 04:20:21 +00:00
org Makefile.am (ordinary_java_source_files): Add org/xml/sax/helpers/NewInstance.java. 2002-12-20 03:49:20 +00:00
scripts javaprims.h: Updated. 2002-12-30 22:42:20 +00:00
sysdep locks.h: Include ia64intrin.h. 2003-03-22 17:38:00 -08:00
testsuite flags.h (flag_wrapv): New flag controlling overflow semantics. 2003-05-31 13:23:32 +00:00
COPYING COPYING: Update to current ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes... 2000-12-18 09:12:19 +00:00
ChangeLog 2003-05-27 Michael Koch <konqueror@gmx.de> 2003-05-27 06:34:29 +00:00
ChangeLog-1999 Rotated ChangeLogs 2000-02-17 22:57:30 +00:00
ChangeLog-2001 ChangeLog rotation 2002-01-22 00:20:23 +00:00
HACKING * HACKING: Fix URL for the automake-gcj. 2002-02-08 01:22:47 +00:00
LIBGCJ_LICENSE Add license clarification. 2002-01-22 22:40:42 +00:00
Makefile.am ByteBufferImpl.java, [...]: Moved files to java/nio. 2003-05-20 08:58:31 +00:00
Makefile.in Accidently comitted this during last commit, revert this little change: 2003-05-20 09:04:38 +00:00
NEWS Updated the NEWS 2000-02-15 09:35:51 +00:00
README gcj.texi: Change sources.redhat.com reference to gcc.gnu.org. 2001-02-08 01:49:53 +00:00
THANKS THANKS: Fix punctuation, alphabetization. 2002-03-15 22:36:05 +00:00
acconfig.h natFileDescriptorPosix.cc (setLength): Handle case where ftruncate is missing. 2002-08-29 18:05:15 +00:00
acinclude.m4 aclocal.m4, [...]: Rebuilt. 2003-01-31 17:59:00 +00:00
aclocal.m4 aclocal.m4, [...]: Rebuilt. 2003-01-31 17:59:00 +00:00
addr2name.awk Jumbo patch: 2000-05-19 17:55:34 +00:00
boehm.cc boehm.cc (_Jv_MarkObj): Mark the protectionDomain of a class. 2003-01-03 16:34:37 +00:00
configure libtool.m4 (lt_cv_deplibs_check_method): Use pass_all on mips*. 2003-04-11 04:20:21 +00:00
configure.host configure.host: Set with_libffi_default and libgcj_interpreter to "yes". 2003-05-08 18:53:44 +00:00
configure.in gcc/ ChangeLog: 2003-03-28 23:40:51 +00:00
defineclass.cc defineclass.cc (handleMethodsEnd): Precompute code for static method. 2003-01-24 19:58:21 +00:00
exception.cc exception.cc (PERSONALITY_FUNCTION): Clear least-significant-bit of catch_type. 2002-12-23 19:59:31 +00:00
gij.cc natRuntime.cc (_Jv_SetDLLSearchPath): New function. 2002-10-25 03:28:00 +00:00
glib.m4 Window.java (Window(Window,GraphicsConfiguration)): Don't try to find graphics configuration. 2003-01-31 17:54:14 +00:00
gtk.m4 Window.java (Window(Window,GraphicsConfiguration)): Don't try to find graphics configuration. 2003-01-31 17:54:14 +00:00
interpret.cc defineclass.cc (handleMethodsEnd): Precompute code for static method. 2003-01-24 19:58:21 +00:00
jni.cc jni.cc (_Jv_LookupJNIMethod): Modify to accept the size of the arguments for a JNI function. 2003-02-12 23:40:31 +00:00
libart.m4 Window.java (Window(Window,GraphicsConfiguration)): Don't try to find graphics configuration. 2003-01-31 17:54:14 +00:00
libgcj-test.spec.in * libgcj.spec.in, libgcj-test.spec.in: Revert for now. 2002-03-31 18:24:59 +00:00
libgcj.spec.in configure.host (alpha*-*): Default to -mieee. 2003-02-13 02:51:26 +00:00
libtool-version * libtool-version: Increased `current'. 2002-12-20 01:47:54 +00:00
mauve-libgcj Makefile.am (nat_source_files): Remove java/io/natObjectOutputStream.cc. 2003-02-28 11:38:56 +00:00
no-threads.cc natFinalizerThread.cc: New file. 2001-10-10 22:25:43 +00:00
nogc.cc nogc.cc: Remove warnings. 2002-01-27 22:33:35 +00:00
posix-threads.cc posix-threads.cc: Include <unistd.h> if HAVE_UNISTD_H is defined. 2003-03-02 01:24:40 +00:00
posix.cc jvm.h: (_Jv_GetNbArgs) added (_Jv_GetSafeArg) added (_Jv_SetArgs) added 2003-04-25 16:48:13 +00:00
prims.cc jvm.h: (_Jv_GetNbArgs) added (_Jv_GetSafeArg) added (_Jv_SetArgs) added 2003-04-25 16:48:13 +00:00
resolve.cc resolve.cc (_Jv_PrepareClass): Round size up to alignment required by this object. 2003-04-23 19:09:56 +00:00
verify.cc * verify.cc: Reverted previous patch. 2003-05-07 01:25:20 +00:00
win32-threads.cc re PR java/9254 (java::lang::Object::wait(), threads-win32.cc returns wrong return codes) 2003-01-28 22:23:36 +00:00
win32.cc [multiple changes] 2003-03-10 19:45:30 +00:00

README

This is libgcj: the runtime library for gcj, the GNU Compiler for Java. 
libgcj provides a partial implementation of the Java Class Libraries.

libgcj is free software.  See the file LIBGCJ_LICENSE for copying permission.


DOCUMENTATION
=============

All documentation, including detailed installation and usage instructions,
can be found on the gcj web pages at this URL:

		http://gcc.gnu.org/java/


REQUIREMENTS
============

libgcj must be built with a compatible version of the gcc compiler. libgcj
releases are usually numbered according to their corresponding gcc release.
For example, if this is "libgcj 2.95.3", you need to build it using "gcc
2.95.3".


QUICK INSTALLATION
==================

  > mkdir build
  > cd build
  > ../libgcj/configure --enable-threads=<THREADS_TYPE> --prefix=<DIR>
  > make
  > make install

where:

<THREADS_TYPE> specifies the threads library to be used by libgcj. Currently 
the possible values are "posix" and "none". This value must be the same as
the value used when configuring gcc itself.

<DIR> specifies the installation directory. This should be the same location 
as where gcc is installed.

Consult the gcj web pages for additional "configure" arguments.

NOTE: libgcj can not be built in the same directory as `configure'. You must 
create a separate build directory. 


BUGS
====

Please submit bug reports via this URL:

	http://gcc.gnu.org/cgi-bin/gnatsweb.pl?database=gcc