Commit Graph

403 Commits

Author SHA1 Message Date
David Daney
6d1e9d1882 configure.host (disable_dladdr): Remove variable and its documentation.
* configure.host (disable_dladdr): Remove variable and its
	documentation.
	* configure.ac: Do not test for disable_dladdr.
	* configure: Regenerate.

From-SVN: r110137
2006-01-23 18:21:07 +00:00
Keith Seitz
d0f4aa53e0 java-interp.h (_Jv_CompileMethod): Add declaration.
* include/java-interp.h (_Jv_CompileMethod): Add declaration.
        (class _Jv_InterpMethod): Add _Jv_CompileMethod as a friend.
        * interpret.cc (_Jv_CompileMethod): New function.
        (run):  Massage code to allow for NULL args.
        Update comments to explain NULL args.
        Return if compiling the method and args is NULL.

From-SVN: r109918
2006-01-18 21:52:45 +00:00
H.J. Lu
a79ae89424 re PR libgcj/25840 (libjava is broken on Linux/x86-64)
2006-01-18  H.J. Lu  <hongjiu.lu@intel.com>

	PR libgcj/25840
	* include/x86_64-signal.h (RESTORE2): Add ".text\n".

From-SVN: r109909
2006-01-18 12:04:50 -08:00
Mark Wielaard
2127637945 Imported GNU Classpath 0.20
Imported GNU Classpath 0.20
       * Makefile.am (AM_CPPFLAGS): Add classpath/include.
       * java/nio/charset/spi/CharsetProvider.java: New override file.
       * java/security/Security.java: Likewise.
       * sources.am: Regenerated.
       * Makefile.in: Likewise.

From-SVN: r109831
2006-01-17 18:09:40 +00:00
Tom Tromey
228366cdd2 natClassLoader.cc (_Jv_NewArrayClass): Don't reference NUM_OBJECT_METHODS.
* java/lang/natClassLoader.cc (_Jv_NewArrayClass): Don't
	reference NUM_OBJECT_METHODS.
	* include/jvm.h (NUM_OBJECT_METHODS): Removed.

From-SVN: r108956
2005-12-22 17:33:05 +00:00
Andrew Haley
9edd0f5e69 Object.h (throwNoSuchMethodError): New method.
2005-12-08  Andrew Haley  <aph@redhat.com>

        * java/lang/Object.h (throwNoSuchMethodError): New method.
        * java/lang/Object.java (throwNoSuchMethodError): New method.
        * include/jvm.h (_Jv_ThrowNoSuchFieldError): Declare.
        * link.cc (_Jv_ThrowNoSuchFieldError): New.
        (link_symbol_table): Don't throw a NoSuchFieldError if a field is
        missing.  Instead, set the otable entry to zero.
        (link_symbol_table): If we don't find a nonstatic method, insert
        the vtable offset of Object.throwNoSuchMethodError() into the
        otable.

From-SVN: r108231
2005-12-08 14:19:13 +00:00
Tom Tromey
3141ed0fe0 re PR java/18278 (JNI functions cannot return a weak reference)
gcc/java:
	PR java/18278:
	* expr.c (build_jni_stub): Unwrap the return value.
	* java-tree.h (soft_unwrapjni_node): New define.
	(enum java_tree_index): Added JTI_SOFT_UNWRAPJNI_NODE.
	* decl.c (java_init_decl_processing): Initialize
	soft_unwrapjni_node.
libjava:
	PR java/18278:
	* testsuite/libjava.jni/pr18278.out: New file.
	* testsuite/libjava.jni/pr18278.c: New file.
	* testsuite/libjava.jni/pr18278.java: New file.
	* include/jvm.h (_Jv_UnwrapJNIweakReference): Declare.
	* jni.cc (_Jv_UnwrapJNIweakReference): New function.
	(call): Unwrap return value if needed.

From-SVN: r107676
2005-11-29 18:34:58 +00:00
Bryce McKinlay
4ca6f88ae8 ia64-frame.h: Removed.
2005-11-24  Bryce McKinlay  <mckinlay@redhat.com>

	* sysdep/ia64-frame.h: Removed.
	* sysdep/ia64.c: Removed.
	* sysdep/dwarf2-backtrace.cc: Removed.
	* configure.ac: Remove references to HAVE_BACKTRACE and
	SUPPLY_BACKTRACE.
	* Makefile.am: Remove SUPPLY_BACKTRACE support.
	* configure: Rebuilt.
	* Makefile.in: Rebuilt.

From-SVN: r107486
2005-11-25 04:15:15 +00:00
Bryce McKinlay
11922361e4 Implement -Xss.
* include/jvm.h (gcj::stack_size): Declare.
        (_Jv_StackSize): Declare.
        * posix-threads.cc (_Jv_InitThreads): Validate gcj::stack_size.
        (_Jv_ThreadStart): Set stack size if specified.
        * prims.cc (gcj::stack_size): Define.
        (parse_memory_size): Renamed from parse_heap_size.
        (_Jv_SetStackSize): Parse stack size argument and set
        gcj::stack_size.

From-SVN: r107132
2005-11-17 20:25:57 +00:00
Kaz Kojima
b3bdba1328 sh-signal.h (MAKE_THROW_FRAME): Remove trailing whitespace.
* include/sh-signal.h (MAKE_THROW_FRAME): Remove trailing whitespace.

From-SVN: r106481
2005-11-04 04:35:34 +00:00
Andreas Jaeger
44bcbae366 .cvsignore are not needed for subversion, remove them.
From-SVN: r106279
2005-10-31 18:20:58 +01:00
Tom Tromey
b9e6a2e5de re PR libgcj/23367 (_Jv_FindMethodInCache is not thread-safe)
PR libgcj/23367:
	* include/jvm.h (_Jv_FreeMethodCache): Declare.
	* java/lang/natClass.cc (MCACHE_SIZE): Conditional on HAVE_TLS.
	(struct _Jv_mcache): Likewise.
	(method_cache): Likewise.
	(_Jv_FindMethodInCache): Do nothing unless TLS is available.
	(_Jv_AddMethodToCache): Likewise.
	(_Jv_FreeMethodCache): New function.
	* java/lang/natThread.cc (finish_): Call _Jv_FreeMethodCache.
	* aclocal.m4, configure, include/config.h.in: Rebuilt.
	* configure.ac: Invoke GCC_CHECK_TLS.

From-SVN: r104707
2005-09-27 20:03:09 +00:00
Tom Tromey
ab3fa9d344 configure, [...]: Rebuilt.
* configure, Makefile.in: Rebuilt.
	* sources.am: Rebuilt.
	* scripts/makemake.tcl (emit_bc_rule): Special-case qt.
	* configure.ac (TOOLKIT): Handle Qt peers properly.

From-SVN: r104706
2005-09-27 18:51:40 +00:00
Tom Tromey
1ea63ef8be Imported Classpath 0.18.
* sources.am, Makefile.in: Updated.
	* Makefile.am (nat_source_files): Removed natProxy.cc.
	* java/lang/reflect/natProxy.cc: Removed.
	* gnu/classpath/jdwp/VMFrame.java,
	gnu/classpath/jdwp/VMIdManager.java,
	gnu/classpath/jdwp/VMVirtualMachine.java,
	java/lang/reflect/VMProxy.java: New files.

2005-09-23  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* scripts/makemake.tcl (verbose): Add gnu/java/awt/peer/qt to BC
	list.

2005-09-23  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/java/net/DefaultContentHandlerFactory.java (getContent):
	Remove ClasspathToolkit references.

2005-09-23  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gnu/awt/xlib/XCanvasPeer.java: Add new peer methods.
	* gnu/awt/xlib/XFramePeer.java: Likewise.
	* gnu/awt/xlib/XGraphicsConfiguration.java: Likewise.

2005-09-23  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* Makefile.am (libgcjawt_la_SOURCES): Remove jawt.c.  Add
	classpath/native/jawt/jawt.c.
	* Makefile.in: Regenerate.
	* jawt.c: Remove file.
	* include/Makefile.am (tool_include__HEADERS): Remove jawt.h and
	jawt_md.h.  Add ../classpath/include/jawt.h and
	../classpath/include/jawt_md.h.
	* include/Makefile.in: Regenerate.
	* include/jawt.h: Regenerate.
	* include/jawt_md.h: Regenerate.

From-SVN: r104586
2005-09-23 21:31:04 +00:00
Tom Tromey
a022cd5969 re PR libgcj/16032 (libgcj should reject class files with incorrect version numbers)
PR libgcj/16032:
	* interpret.cc (AVAL1U): Resolve pool entry when not direct
	threaded.
	(AVAL2U): Likewise.
	(compile): Handle 'ldc class' specially.
	(_Jv_InterpMethod::run): Added special 'ldc class' instruction.
	* verify.cc (check_constant): Handle 'ldc class' for 1.5 classes.
	* defineclass.cc (handleCodeAttribute): Set new field.
	(MAJOR_1_1, MINOR_1_1, MAJOR_1_2, MINOR_1_2, MAJOR_1_3, MINOR_1_3,
	MAJOR_1_4, MINOR_1_4, MAJOR_1_5, MINOR_1_5): New defines.
	(parse): Check version numbers.
	(_Jv_ClassReader::is_15): New field.
	(_Jv_ClassReader): Initialize it.
	* include/java-interp.h (_Jv_InterpMethod::is_15): New field.

From-SVN: r104325
2005-09-15 22:02:13 +00:00
Thomas Fitzsimmons
16dab3e221 re PR libgcj/23762 (java.library.path should default to value of environment variable specified by LTDL_SHLIBPATH_VAR)
2005-09-12  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/23762
	* shlibpath.m4: New file.
	* configure.ac: If libltdl is being used call AC_LTDL_SHLIBPATH
	macro.
	* gnu/classpath/natSystemProperties.cc (insertSystemProperties)
	[USE_LTDL]: If it was not defined with -D set java.library.path to
	the value of LTDL_SHLIBPATH_VAR.

From-SVN: r104198
2005-09-12 23:50:01 +00:00
Andrew Haley
ddef717308 re PR libgcj/22084 (Divide_1 test case hangs)
2005-09-08  Andrew Haley  <aph@redhat.com>

	PR java/22084
	* include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Bump IP by 1 if
	R/M field in instruction is 100.

From-SVN: r104094
2005-09-09 13:05:20 +00:00
Thomas Fitzsimmons
9ff284256a re PR libgcj/23761 (java.library.path doesn't affect module loading path)
2005-09-08  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/23761
	* include/java-props.h (_Jv_Module_Load_Path): Declare variable.
	* java/lang/natRuntime.cc (init): Call lt_dlsetsearchpath after
	lt_dlinit.
	* gnu/classpath/natSystemProperties.cc (_Jv_Module_Load_Path):
	Define variable.
	(_Jv_SetDLLSearchPath): Do not call lt_dlsetsearchpath.  Set
	_Jv_Module_Load_Path.

From-SVN: r104044
2005-09-08 21:26:25 +00:00
Kelley Cook
029e5fc0c5 Makefile.am (ACLOCAL_AMFLAGS): Also include "..".
2005-08-22  Kelley Cook  <kcook@gcc.gnu.org>

	* Makefile.am (ACLOCAL_AMFLAGS): Also include "..".
	* acinclude.m4: Delete.  Extract CHECK_FOR_BROKEN_MINGW_LD to ...
	* mingwld.m4: ... this new file.
	* aclocal.m4, Makefile.in, gcj/Makefile.in: Regenerate.
	* include/Makefile.in, testsuite/Makfile.in: Regenerate.

From-SVN: r103361
2005-08-22 22:36:35 +00:00
Andrew Pinski
c0975bc705 Makefile.am (extra_ldflags_libjava): New variable to substitute in.
2005-08-19  Andrew Pinski  <pinskia@physics.uc.edu>

        * Makefile.am (extra_ldflags_libjava): New variable to
        substitute in.
        (LIBLINK): Add extra_ldflags_libjava to it.
        * configure.ac (extra_ldflags_libjava): Set for *-darwin* to
        "-Wl,-single_module".
        * Makefile.in: Regenerate.
        * aclocal.m4: Regenerate.
        * configure: Regenerate.
        * gcj/Makefile.in: Regenerate.
        * include/Makefile.in: Regenerate.
        * testsuite/Makefile.in: Regenerate.

From-SVN: r103265
2005-08-18 22:14:13 -07:00
Tom Tromey
97b51fd08e class.c (make_class_data): Always emit JV_STATE_PRELOADING for class' initial state.
gcc/java:
	* class.c (make_class_data): Always emit JV_STATE_PRELOADING for
	class' initial state.
libjava:
	* java/lang/Class.h (_Jv_IsBinaryCompatibilityABI): Declare as
	friend.
	* include/jvm.h (_Jv_IsBinaryCompatibilityABI): New function.
	* testsuite/libjava.lang/bclink.java: New file.
	* testsuite/libjava.lang/bclink.out: New file.
	* link.cc (print_class_loaded): Changed ABI test to look at
	various _syms fields.

From-SVN: r103225
2005-08-17 20:44:10 +00:00
Tom Tromey
46a2c9d2d1 Makefile.in: Rebuilt.
* include/Makefile.in: Rebuilt.
	* include/Makefile.am (tool_include__HEADERS): Include
	classpath's jni.h.

From-SVN: r102296
2005-07-22 20:45:36 +00:00
Tom Tromey
c69094e1a3 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am ($(libgij_la_OBJECTS)): Depend on headers.stamp.

From-SVN: r102139
2005-07-18 20:47:00 +00:00
Tom Tromey
b0fa81eea9 Major merge with Classpath.
Removed many duplicate files.
	* HACKING: Updated.x
	* classpath: Imported new directory.
	* standard.omit: New file.
	* Makefile.in, aclocal.m4, configure: Rebuilt.
	* sources.am: New file.
	* configure.ac: Run Classpath configure script.  Moved code around
	to support.  Disable xlib AWT peers (temporarily).
	* Makefile.am (SUBDIRS): Added 'classpath'
	(JAVAC): Removed.
	(AM_CPPFLAGS): Added more -I options.
	(BOOTCLASSPATH): Simplified.
	Completely redid how sources are built.
	Include sources.am.
	* include/Makefile.am (tool_include__HEADERS): Removed jni.h.
	* include/jni.h: Removed (in Classpath).
	* scripts/classes.pl: Updated to look at built classes.
	* scripts/makemake.tcl: New file.
	* testsuite/libjava.jni/jni.exp (gcj_jni_compile_c_to_so): Added
	-I options.
	(gcj_jni_invocation_compile_c_to_binary): Likewise.

From-SVN: r102082
2005-07-16 01:27:14 +00:00
Kelley Cook
917b04f492 Update FSF address
From-SVN: r101453
2005-06-30 03:22:09 +00:00
Tom Tromey
42c5169549 natClassLoader.cc (_Jv_UnregisterClass): Handle case where class' name is NULL.
* java/lang/natClassLoader.cc (_Jv_UnregisterClass): Handle case
	where class' name is NULL.
	(_Jv_FindClass): Don't wait for class state.
	* java/lang/natVMClassLoader.cc (defineClass): Only unregister if
	name found.
	* include/java-interp.h (_Jv_DefineClass): Updated.
	* defineclass.cc (_Jv_DefineClass): Added 'name_result' argument.
	(struct _Jv_ClassReader): Likewise.
	(found_name): New field.
	(handleClassBegin): Set *found_name.
	(_Jv_VerifyMethodSignature): Handle case where ptr==NULL.
	(handleClassBegin): Throw error if super class not set.
	(read_methods): Correctly call check_tag and prepare_pool_entry.

From-SVN: r101301
2005-06-24 22:48:33 +00:00
Kelley Cook
3d5a109a9c configure.ac (USING_ECOS_PLATFORM): Remove and merge into...
2005-06-15  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac (USING_ECOS_PLATFORM): Remove and merge into...
	(USING_POSIX_PLATFORM): ... here.
	* Makefile.am: Delete USING_ECOS_PLATFORM.
	* configure, Makefile.in, include/Makefile.in, testsuite/Makefile.in,
	external/Makefile.in, external/sax/Makefile.in,
	external/w3c_dom/Makefile.in, gcj/Makefile.in: Regenerate.

From-SVN: r101005
2005-06-16 01:02:24 +00:00
Tom Tromey
fbb4c46b2d re PR libgcj/21906 (hang when invoking abstract method)
gcc/java/:
	PR libgcj/21906:
	* class.c (make_method_value): Use soft_abstractmethod_node for
	abstract method.
	* java-tree.h (soft_abstractmethod_node): New define.
	(JTI_SOFT_ABSTRACTMETHOD_NODE): New enum constant.
	* decl.c (java_init_decl_processing): Initialize
	soft_abstractmethod_node.
libjava/:
	PR libgcj/21906:
	* defineclass.cc (handleMethodsEnd): Set ncode for abstract
	methods.
	* include/jvm.h (_Jv_ThrowAbstractMethodError): Declare.
	* link.cc (_Jv_ThrowAbstractMethodError): Renamed.  No longer
	static.
	(append_partial_itable): Use it.
	(set_vtable_entries): Likewise.

From-SVN: r100992
2005-06-15 19:11:43 +00:00
Tom Tromey
cd11181329 re PR libgcj/19877 (sometimes reconfiguring leads to incorrect config.h)
config/:
	PR libgcj/19877:
	* no-executables.m4: Call real AC_FUNC_MMAP when cache variable
	is set but not 'no'.
libstdc++-v3/:
	PR libgcj/19877:
	* configure, aclocal.m4: Rebuilt.
	* Makefile.in, include/Makefile.in, libmath/Makefile.in,
	libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
	testsuite/Makefile.in: Likewise.
libjava/:
	PR libgcj/19877:
	* configure, aclocal.m4, Makefile.in: Rebuilt.
libgfortran/:
	PR libgcj/19877:
	* configure, aclocal.m4, Makefile.in: Rebuilt.
zlib/:
	PR libgcj/19877:
	* configure, aclocal.m4, Makefile.in: Rebuilt.

From-SVN: r100953
2005-06-14 20:05:59 +00:00
Bryce McKinlay
a04323f4cb decl.c (GCJ_BINARYCOMPAT_ADDITION, [...]): Removed.
2005-05-26  Bryce McKinlay  <mckinlay@redhat.com>

	* decl.c (GCJ_BINARYCOMPAT_ADDITION,
	GCJ_BOOTSTRAP_LOADER_ADDITION): Removed.
	(FLAG_BINARYCOMPAT_ABI, FLAG_BOOTSTRAP_LOADER,
	MINOR_BINARYCOMPAT_ABI_VERSION): New.
	(GCJ_CURRENT_BC_ABI_VERSION): Use new method to calculate version ID.
	(parse_version): Calculate version ID using new method. Use
	bit-flags for flag_indirect_dispatch and flag_bootstrap_classes.

2005-05-26  Bryce McKinlay  <mckinlay@redhat.com>

	* include/jvm.h (FLAG_BINARYCOMPAT_ABI, FLAG_BOOTSTRAP_LOADER): New.
	(GCJ_BINARYCOMPAT_ADDITION, GCJ_BOOTSTRAP_LOADER_ADDITION): Removed.
	(OLD_GCJ_40_BC_ABI_VERSION): Renamed. Old-style version ID for
	BC-ABI classes.
	(GCJ_CXX_ABI_VERSION): Renamed from GCJ_ABI_VERSION.
	(GCJ_40_BC_ABI_VERSION): New. Calculate version	IDs using new
	method.
	(_Jv_CheckABIVersion): Check for both old and new style version IDs.
	(_Jv_ClassForBootstrapLoader): Use FLAG_BOOTSTRAP_LOADER.

From-SVN: r100222
2005-05-26 22:07:04 +01:00
Anthony Green
9a6411ed30 gtk_jawt.c (classpath_jawt_object_lock, [...]): New functions.
2005-05-18  Anthony Green  <green@redhat.com>

        * jni/gtk-peer/gtk_jawt.c (classpath_jawt_object_lock,
        classpath_jawt_object_unlock, classpath_jawt_create_lock,
        classpath_jawt_destroy_lock): New functions.
        * jni/classpath/classpath_jawt.h (classpath_jawt_object_lock,
        classpath_jawt_object_unlock, classpath_jawt_create_lock,
        classpath_jawt_destroy_lock): New functions.
        * include/jawt.h (struct _JAWT_DrawingSurface): Add lock
        field.
        * jawt.c: #include malloc.h.
        (_Jv_Lock): Use lock.
        (_Jv_Unlock): Ditto.
        (_Jv_GetDrawingSurface): Initialize lock.
        (_Jv_FreeDrawingSurface): Destroy lock.
        (_Jv_FreeDrawingSurfaceInfo): Free platformInfo.

From-SVN: r99903
2005-05-18 14:20:53 +00:00
Kelley Cook
8107bc8308 configure.ac: Use AC_C_BIGENDIAN instead of AC_C_BIGENDIAN_CROSS.
2005-05-17  Kelley Cook  <kcook@gcc.gnu.org>

	* configure.ac: Use AC_C_BIGENDIAN instead of AC_C_BIGENDIAN_CROSS.
	Use AC_CHECK_SIZEOF instead of AC_COMPILE_CHECK_SIZEOF.
	* aclocal.m4, configure, config.h.in, include/config.h.in,
	Makefile.in, include/Makefile.in, testsuite/Makefile.in,
	external/Makefile.in, external/sax/Makefile.in,
	external/w3c_dom/Makefile.in, gcj/Makefile.in: Regenerate.

From-SVN: r99880
2005-05-18 02:03:49 +00:00
Paolo Bonzini
34bab46d1a configure.ac (--enable-libgcj-multifile): Remove.
2005-05-11  Paolo Bonzini  <bonzini@gnu.org>

	* configure.ac (--enable-libgcj-multifile): Remove.

	* Makefile.am (all_native_compiled_source_files,
	(all_native_compiled_dirs, all_java_dirs, all_java_lo_files,
	all_libgcj_lo_files, all_xlib_lo_files,
	all_java_deps_files, all_java_stamp_files,
	all_java_filelist_files): New variables.
	(EXTRA_DIST): New Automake variable.
	(CLEANFILES): Add .stamp, .list and .lo files.
	(%.list, %.lo, %.stamp, Makefile.deps): New rules.
	(classes.stamp): Depend on $(all_java_stamp_files).
	(libgcj.la): Pass $(libgcj_la_LIBADD) to the linker without
	going through write_entries_to_file.

	(all_java_source_files, all_property_files): Move earlier.
	(libgcj_la_OBJECTS, javao_files, xlib_javao_files,
	all_java_class_files): Remove.
	(gtk_awt_peer_sources): Rename to...
	(gtk_awt_peer_source_files): ... this.  Adjust throughout.

	(ONESTEP): Remove.
	(libgcj0_convenience_la_SOURCES): Remove Java source files.
	(libgcj0_convenience_la_LIBADD): Add $(all_libgcj_lo_files).
	(libgcj0_convenience_la_DEPENDENCIES): Likewise.
	(libgcj_la_SOURCES): Remove.
	(lib_gnu_awt_xlib_la_SOURCES): Remove Java source files.
	(lib_gnu_awt_xlib_la_LIBADD): Add $(all_xlib_lo_files).
	(lib_gnu_awt_xlib_la_DEPENDENCIES): Likewise.

	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* external/Makefile.in: Regenerate.
	* external/sax/Makefile.in: Regenerate.
	* external/w3c_dom/Makefile.in: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libltdl/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r99823
2005-05-17 07:33:39 +00:00
Bryce McKinlay
f5ea88a3c8 [multiple changes]
2005-05-12  Bryce McKinlay  <mckinlay@redhat.com>

	* include/jvm.h (gcj::verifyClasses): Declare.
	* link.cc (gcj::verbose_class_flag): Moved.
	* prims.cc (gcj::verifyClasses): Define here.
	(gcj::verbose_class_flag): Move definition here.
	(_Jv_Linker::wait_for_state): Don't call verify_class
	if gcj::verifyClasses is not set.
	* gij.cc (main): Set gcj::verifyClasses when '-noverify' is given.

2005-05-12  Aaron Luchko  <aluchko@redhat.com>

	* gij.cc (main): Recognize '-verify', '-noverify', and
	'-verifyremote'

2005-05-12  Aaron Luchko <aluchko@redhat.com>

        * gcj.texi: Add '-verify', '-noverify', and '-verifyremote'.

From-SVN: r99646
2005-05-13 02:02:39 +01:00
Tom Tromey
cca1655eab gcj.texi (Code Generation): Document -fbootstrap-classes.
gcc/java:
	* gcj.texi (Code Generation): Document -fbootstrap-classes.
	* decl.c (GCJ_BOOTSTRAP_LOADER_ADDITION): New macro.
	(parse_version): Use it.
	* lang.opt (-fbootstrap-classes): New option.
libjava:
	* external/w3c_dom/Makefile.in: Rebuilt.
	* external/w3c_dom/Makefile.am (libw3c_gcj_la_GCJFLAGS): Added
	-fbootstrap-classes.
	* external/sax/Makefile.in: Rebuilt.
	* external/sax/Makefile.am (libsax_gcj_la_GCJFLAGS): Added
	-fbootstrap-classes.
	* java/lang/Class.h (_Jv_CopyClassesToSystemLoader): Declare as
	friend.
	* java/lang/natVMClassLoader.cc (getSystemClassLoaderInternal):
	Call _Jv_CopyClassesToSystemLoader.
	* java/lang/natClassLoader.cc (system_class_list): New global.
	(_Jv_RegisterClassHookDefault): Handle bootstrap and system
	classes differently.
	(_Jv_CopyClassesToSystemLoader): New function.
	(SYSTEM_LOADER_INITIALIZED): New define.
	* include/jvm.h (GCJ_BOOTSTRAP_LOADER_ADDITION): New define.
	(_Jv_CheckABIVersion): Use it.
	(_Jv_ClassForBootstrapLoader): New function.
	* Makefile.in: Rebuilt.
	* Makefile.am (AM_GCJFLAGS): Added -fbootstrap-classes.

From-SVN: r99604
2005-05-12 01:27:15 +00:00
Andrew Haley
f3dc41fe8e re PR java/19285 (Interfaces not initialized by static field access)
2005-04-27  Andrew Haley  <aph@redhat.com>

        PR java/19285
        * prims.cc (_Jv_ResolvePoolEntry): New function.
        * include/jvm.h (_Jv_Linker::find_field): New arg: found_class.
        * link.cc (_Jv_Linker::find_field): New arg: found_class.
        (resolve_pool_entry): Initialize the class in which a field is
        found.
        (link_symbol_table): Pass new arg to found_class.

From-SVN: r99006
2005-04-29 18:35:36 +00:00
Tom Tromey
eca5a6a939 jni.h (_Jv_va_list): Removed.
* include/jni.h (_Jv_va_list): Removed.
	Moved configuration code...
	* include/jni_md.h: ... here.  New file.
	* include/Makefile.in: Rebuilt.
	* include/Makefile.am (tool_include__HEADERS): Added jni_md.h.

From-SVN: r98730
2005-04-25 18:44:10 +00:00
Thomas Fitzsimmons
c33b7bf04a re PR libgcj/20750 (libgcj needs a --with-java-home configure option)
2005-04-05  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* doc/install.texi (Configuration): Document --with-java-home.

2005-04-05  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/20750
	* Makefile.am (AM_CXXFLAGS): Define JAVA_HOME.
	* Makefile.in: Regenerate.
	* configure.ac: Add --with-java-home option.
	* configure: Regenerate.
	* external/Makefile.in: Regenerate.
	* external/sax/Makefile.in: Regenerate.
	* external/w3c_dom/Makefile.in: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.
	* java/lang/natRuntime.cc (insertSystemProperties): Set java.home
	to JAVA_HOME macro.

From-SVN: r97671
2005-04-05 23:46:09 +00:00
Tom Tromey
8b6e769053 jni.cc (_Jv_JNI_GetAnyFieldID): Throw ClassNotFoundException.
* jni.cc (_Jv_JNI_GetAnyFieldID): Throw ClassNotFoundException.
	* java/lang/reflect/natMethod.cc (_Jv_GetTypesFromSignature):
	Rewrote to use _Jv_FindClassFromSignature.
	* verify.cc (resolve): throw NoClassDefFoundError.
	* link.cc (resolve_field): Throw NoClassDefFoundError.
	(find_field): Likewise.
	* prims.cc (_Jv_FindClassFromSignature): Removed recursion.
	Handle error cases.  Added 'endp' argument.
	* include/jvm.h (_Jv_FindClassFromSignature): Updated prototype.

From-SVN: r97660
2005-04-05 22:26:26 +00:00
Thomas Fitzsimmons
b6121641fc re PR libgcj/20090 (gij should be implemented in Java)
2005-04-01  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* gcj.texi (Invoking gij): Add descriptions of new -X options.
	Mention recognized-and-ignored compatibility options.
	(Memory allocation): Add descriptions of JvMalloc, JvRealloc and
	JvFree.
	(About CNI): Add Memory allocation section.

2005-04-01  Thomas Fitzsimmons  <fitzsim@redhat.com>

	PR libgcj/20090, PR libgcj/20526
	* gij.cc (nonstandard_opts_help): New function.
	(add_option): New function.
	(main): Support java options.  Set java.class.path.  Don't set
	_Jv_Jar_Class_Path.
	* prims.cc (parse_x_arg): New function.
	(parse_init_args): Call parse_x_arg for -X and _ options, when
	ignoreUnrecognized is true.
	(new _Jv_RunMain): New vm_args variant.
	(old _Jv_RunMain): Call new vm_args _Jv_RunMain.
	(_Jv_Jar_Class_Path): Remove variable.
	* include/java-props.h: Likewise.
	* include/cni.h (JvRealloc): New function.
	* include/jvm.h (_Jv_RunMain): Declare vm_args variant.
	* java/lang/natRuntime.cc (insertSystemProperties): Remove
	_Jv_Jar_Class_Path logic.  Use JV_VERSION and JV_API_VERSION
	macros.
	* configure.ac (JV_VERSION): Define.
	(JV_API_VERSION): Likewise.
	* configure: Regenerate.
	* include/config.h.in: Regenerate.

From-SVN: r97429
2005-04-02 02:26:51 +00:00
Tom Tromey
aa893047e8 Makefile.in: Rebuilt.
* Makefile.in: Rebuilt.
	* Makefile.am (AM_CXXFLAGS): Define TOOLEXECLIBDIR.
	(libgcj0_convenience_la_SOURCES): Don't include
	gnu_xml_source_files.
	(libgcj0_convenience_la_LIBADD): New variable.
	(libgcj_la_LIBADD): Don't include sax or w3c_dom.
	(all_java_source_files): javax_imageio_source_files,
	javax_xml_source_files, and gnu_java_beans_source_files.
	($(gnu_xml_source_files:.java=.lo)): Removed target.
	(gnu-xml.lo): New target.
	(javax-imageio.lo): Likewise.
	(javax-xml.lo): Likewise.
	(gnu-java-beans.lo): Likewise.
	(gnu_java_beans_source_files): New variable.
	(javax_imageio_source_files): Likewise.
	(javax_xml_source_files): Likewise.
	(javax_source_files): Moved files to other variable.
	(awt_java_source_files): Likewise.
	(ordinary_java_source_files): Added BootClassLoader.java.
	* java/lang/natVMClassLoader.cc (defineClass): Use boot loader,
	not system class loader.
	(initBootLoader): New method.
	(loadClass): Search bootLoader.
	* java/lang/natClassLoader.cc (_Jv_RegisterInitiatingLoader): Use
	boot loader, not system class loader.
	(_Jv_UnregisterInitiatingLoader): Likewise.
	(_Jv_FindClass): Likewise.  Ensure entries in
	bootstrap_class_list are unique.
	* java/lang/natClass.cc (getClassLoader): Don't special case
	system class loader.
	* java/lang/VMClassLoader.java (bootLoader): New field.
	(getResource): Use bootLoader.
	(getResources): Likewise.
	(initBootLoader): Declare.
	* gnu/gcj/runtime/BootClassLoader.java: New file.
	* external/sax/org/xml/sax/helpers/NamespaceSupport.java
	(EMPTY_ENUMERATION): Now package-private.
	* external/w3c_com/Makefile.in: Rebuilt.
	* external/w3c_com/Makefile.am (MULTIBUILDTOP): New variable.
	(w3c.jar): New target.
	(classes.stamp): Updated.
	(toolexeclib_LTLIBRARIES): Renamed from noinst_LTLIBRARIES.
	Changed name of library.
	(libw3c_gcj_la_SOURCES): New variable.
	(libw3c_gcj_la_GCJFLAGS): Likewise.
	(source_files): Renamed from lib3c_convenience_la_SOURCES.
	* external/sax/Makefile.in: Rebuilt.
	* external/sax/Makefile.am (MULTIBUILDTOP): New variable.
	(sax.jar): New target.
	(classes.stamp): Updated.
	(toolexeclib_LTLIBRARIES): Renamed from noinst_LTLIBRARIES.
	Changed name of library.
	(libsax_gcj_la_SOURCES): New variable.
	(libsax_gcj_la_GCJFLAGS): Likewise.
	(source_files): Renamed from libsax_convenience_la_SOURCES.
	* stacktrace.cc (non_system_trace_fn): Don't look at system class
	loader.
	* prims.cc (_Jv_CreateJavaVM): Initialize the bootstrap class
	loader.
	(_Jv_RunMain): Handle case where 'runtime' is NULL at exit.

From-SVN: r96960
2005-03-24 00:04:22 +00:00
Tom Tromey
85c4f26a86 jvm.h (GCJ_40_BC_ABI_VERSION): New define.
libjava:
	* include/jvm.h (GCJ_40_BC_ABI_VERSION): New define.
	(_Jv_CheckABIVersion): Use it.
gcc/java:
	* decl.c (GCJ_CURRENT_BC_ABI_VERSION): New define.
	(parse_version): Use it.

From-SVN: r96948
2005-03-23 20:27:12 +00:00
Mike Stump
4148df124f posix.h: .dylib is used on all Apple MACH platforms.
* include/posix.h: .dylib is used on all Apple MACH platforms.
        * java/lang/ieeefp.h: ppc64 is also __IEEE_BIG_ENDIAN.

From-SVN: r96889
2005-03-22 20:10:16 +00:00
Zack Weinberg
e9bbd9d707 gxx-include-dir.m4: In all substitutions, leave $(gcc_version) to be expanded by the Makefile.
config:
	* gxx-include-dir.m4: In all substitutions, leave $(gcc_version)
	to be expanded by the Makefile.
libjava:
	* configure.ac: Do not invoke TL_AC_GCC_VERSION.  Do not
	set tool_include_dir.  In all substitutions, leave $(gcc_version)
	to be expanded by the Makefile.
	* aclocal.m4, configure: Regenerate.
	* Makefile.am: Set gcc_version.  Replace all uses of
	@gcc_version@ with $(gcc_version).
	* external/Makefile.am, external/sax/Makefile.am
	* external/w3c_dom/Makefile.am, gcj/Makefile.am
	* testsuite/Makefile.am: Set gcc_version.
	* include/Makefile.am: Set gcc_version and tool_include_dir.
	* Makefile.in, external/Makefile.in, external/sax/Makefile.in
	* external/w3c_dom/Makefile.in, gcj/Makefile.in, include/Makefile.in
	* testsuite/Makefile.in: Regenerate.

From-SVN: r96825
2005-03-21 18:12:32 +00:00
Thomas Fitzsimmons
5aa9bbc417 Makefile.am (gtk_c_source_files): Remove jni/classpath/jcl.c, jni/classpath/jnilink.c, jni/classpath/primlib.c.
2005-03-16  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* Makefile.am (gtk_c_source_files): Remove jni/classpath/jcl.c,
	jni/classpath/jnilink.c, jni/classpath/primlib.c.
	(lib_gnu_java_awt_peer_gtk_la_SOURCES): jni/classpath/jcl.h,
	jni/classpath/jnilink.h, jni/classpath/primlib.h.
	* Makefile.in: Regenerate.
	* aclocal.m4: Regenerate.
	* external/Makefile.in: Regenerate.
	* external/sax/Makefile.in: Regenerate.
	* external/w3c_dom/Makefile.in: Regenerate.
	* gcj/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.
	* jni/classpath/jcl.h: Remove.
	* jni/classpath/jcl.c: Likewise.
	* jni/classpath/jnilink.h: Remove.
	* jni/classpath/jnilink.c: Likewise.
	* jni/classpath/primlib.h: Remove.
	* jni/classpath/primlib.c: Likewise.

From-SVN: r96590
2005-03-17 00:59:33 +00:00
Tom Tromey
f37a936b56 link.cc (ensure_class_linked): Removed #ifdef.
* link.cc (ensure_class_linked): Removed #ifdef.
	(print_class_loaded): Likewise.
	(wait_for_state): Likewise.
	* java/lang/Class.h (_Jv_IsInterpretedClass): Always declare.
	* include/jvm.h (_Jv_IsInterpretedClass): Moved from...
	* include/java-interp.h: ... here.

From-SVN: r96589
2005-03-17 00:18:50 +00:00
Andreas Tobler
455d8f0605 stacktrace.cc (_Jv_StackTrace::UnwindTraceFn): Protect interpreter-specific code with #ifdef INTERPRETER.
2005-03-15  Andreas Tobler  <a.tobler@schweiz.ch>

        * stacktrace.cc (_Jv_StackTrace::UnwindTraceFn): Protect
        interpreter-specific code with #ifdef INTERPRETER.
        (_Jv_StackTrace::getLineNumberForFrame): Likewise.
        (_Jv_StackTrace::FillInFrameInfo): Likewise.
        (_Jv_StackTrace::non_system_trace_fn): Likewise.
        * include/java-stack.h (struct _Jv_InterpFrameInfo): Protect  with
        #ifdef INTERPRETER. Also protect declarations that use it.
        * java/lang/Class.h: Move _Jv_StackTrace friend declaration  outside
        #ifdef INTERPRETER block.

From-SVN: r96571
2005-03-16 18:18:59 +00:00
Bryce McKinlay
18744d9b72 New Stack Trace infrastructure.
2005-03-10  Bryce McKinlay  <mckinlay@redhat.com>

	New Stack Trace infrastructure.
	* Makefile.am (libgcj0_convenience_la_SOURCES): Add stacktrace.cc.
	(gnu/gcj/runtime/StackTrace.lo): Removed.
	(ordinary_java_source_files): Remove obsolete files.
	(nat_source_files): Remove obsolete files. Add natVMThrowable.cc.
	* configure.host (fallback_backtrace_h): Set backtrace header
	for mingw and cygwin targets.
	* configure.ac: Make symlink for fallback backtrace headers.
	* Makefile.in, configure: Rebuilt.
	* defineclass.cc (_Jv_ClassReader::read_one_code_attribute):
	Read 'LineNumberTable' attribute.
	(_Jv_ClassReader::read_one_class_attribute): Read 'SourceFile'
	attribute.
	(_Jv_ClassReader::handleCodeAttribute): Initialize method line
	table fields.
	* exception.cc: Remove unused include.
	* interpret.cc (DIRECT_THREADED, insn_slot): Moved to java-interp.h.
	(SAVE_PC): New macro. Save current PC in the interpreter frame.
	(NULLCHECK, NULLARRAYCHECK): Use SAVE_PC.
	(_Jv_InterpMethod::compile): Translate bytecode PC values in the line
	table to direct threaded instruction values.
	(_Jv_StartOfInterpreter, _Jv_EndOfInterpreter): Removed.
	(_Jv_InterpMethod::run): No longer member function. All
	callers updated. Remove _Unwind calls. Call SAVE_PC whenever a call
	is made or where an instruction could throw.
	(_Jv_InterpMethod::get_source_line): New. Look up source line numbers
	in line_table.
	* prims.cc (catch_segv): Construct exception after MAKE_THROW_FRAME.
	(catch_fpe): Likewise.
	* stacktrace.cc: New file. Stack trace code now here.
	* gnu/gcj/runtime/MethodRef.java:
	* gnu/gcj/runtime/NameFinder.java: Mostly reimplemented. Now simply
	calls addr2line to look up PC addresses in a given binary or shared
	library.
	* gnu/gcj/runtime/StackTrace.java, gnu/gcj/runtime/natNameFinder.cc,
	gnu/gcj/runtime/natStackTrace.cc: Removed.
	* gnu/java/lang/MainThread.java (call_main): Add comment warning that
	this function name is specially recognised by the stack trace code
	and shouldn't be changed.
	* include/java-interp.h (DIRECT_THREADED, insn_slot): Moved here.
	(struct  _Jv_LineTableEntry, line_table, line_table_len): New.
	(_Jv_InterpMethod::run): Update declaration.
	(_Jv_StackTrace_): New friend. NameFinder and StackTrace no longer
	friends.
	(_Jv_InterpFrame): Renamed from _Jv_MethodChain. Add PC field.
	* include/java-stack.h: New file. Declarations for stack tracing.
	* include/jvm.h (_Jv_Frame_info): Removed.
	* java/lang/Class.h: Update friend declarations.
	* java/lang/VMClassLoader.java (getSystemClassLoader): Simplify
	exception message.
	* java/lang/VMThrowable.java (fillInStackTrace): Now native.
	(getStackTrace): Now native.
	(data): New RawDataManaged field.
	* java/lang/natClass.cc: Update includes.
	(forName): Use _Jv_StackTrace::GetCallingClass for
	calling-classloader check.
	(getClassLoader): Likewise.
	* java/lang/natRuntime.cc: Update includes.
	(_load): Use _Jv_StackTrace::GetFirstNonSystemClassLoader.
	* java/lang/natVMSecurityManager.cc: Update includes.
	(getClassContext): Use _Jv_StackTrace::GetClassContext.
	* java/lang/natVMThrowable.cc: New file. Native methods for
	VMThrowable.
	* java/lang/reflect/natArray.cc: Update includes.
	(newInstance): Use _Jv_StackTrace::GetCallingClass to implement
	accessibility check.
	* java/lang/reflect/natConstructor.cc: Update includes.
	(newInstance): Use _Jv_StackTrace::GetCallingClass to implement
	accessibility check.
	* java/lang/reflect/natField.cc: Update includes.
	(getAddr): Use _Jv_StackTrace::GetCallingClass to implement
	accessibility check.
	* java/lang/reflect/natMethod.cc: Update includes.
	(invoke): Use _Jv_StackTrace::GetCallingClass to implement
	accessibility check.
	* java/util/natResourceBundle.cc: Update includes.
	(getCallingClassLoader): Use _Jv_StackTrace::GetCallingClass.
	* java/util/logging/natLogger.cc: Update includes. Use
	_Jv_StackTrace::GetCallerInfo to get call-site info.
	* sysdep/generic/backtrace.h: Fallback backtrace code. Stub
	implementation.
	* sysdep/i386/backtrace.h: New. Fallback backtrace code. i386
	implementation.

From-SVN: r96253
2005-03-10 19:02:21 +00:00
Tom Tromey
21b2340908 re PR java/20215 (gcj does not accept classes with same name fields)
PR java/20215:
	* include/jvm.h (_Jv_Linker::find_field_helper): Updated.
	* link.cc (find_field_helper): Added 'type' argument.
	(find_field): Updated.

From-SVN: r96032
2005-03-07 17:18:33 +00:00
Anthony Green
011ad05844 gtk_jawt.c (classpath_jawt_get_drawable, [...]): New functions.
2005-02-15  Anthony Green  <green@redhat.com>

	* jni/gtk-peer/gtk_jawt.c (classpath_jawt_get_drawable,
	classpath_jawt_lock, classpath_jawt_unlock): New functions.
	* jawt.c (_Jv_JAWT_Lock, _Jv_JAWT_Unlock): New functions.
	(_Jv_GetDrawingSurface): Set visualID.
	(_Jv_FreeDrawingSurfaceInfo): Clear visualID.
	(JAWT_GetAWT): Set Lock and Unlock.
	* include/jawt_md.h (struct _JAWT_X11DrawingSurfaceInfo): Add visualID.
	* include/jawt.h (JAWT_VERSION_1_4, JAWT_LOCK_ERROR,
	JAWT_LOCK_CLIP_CHANGED, JAWT_LOCK_BOUNDS_CHANGED,
	JAWT_LOCK_SURFACE_CHANGED): New macros.
	(struct _JAWT): Add Lock and Unlock.

From-SVN: r95943
2005-03-05 21:47:10 +00:00