summaryrefslogtreecommitdiffstats
path: root/libjava/include
Commit message (Collapse)AuthorAgeFilesLines
...
* 2002-01-06 Andreas Tobler <a.tobler@schweiz.ch>tromey2002-01-061-0/+10
| | | | | | | | | * configure, include/config.h.in: Rebuilt. * java/lang/natSystem.cc (getSystemTimeZone): Check HAVE_TM_ZONE. * configure.in: Call AC_STRUCT_TIMEZONE. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48588 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/jvm.h (_Jv_BuildGCDescr): Declare unconditionally.bryce2001-12-191-2/+0
| | | | | | | * nogc.cc (_Jv_BuildGCDescr): Define unconditionally. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48169 138bc75d-0d04-0410-961f-82ee72b054a4
* For PR libgcj/5103:tromey2001-12-163-15/+113
| | | | | | | | | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48082 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/java:bryce2001-12-151-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48038 138bc75d-0d04-0410-961f-82ee72b054a4
* * libjava/prims.cc: Some old cleanups. The collector nowhboehm2001-12-141-9/+11
| | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48002 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix for PR libgcj/2024, plus other class name cleanups:tromey2001-11-262-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47334 138bc75d-0d04-0410-961f-82ee72b054a4
* * verify.cc (_Jv_BytecodeVerifier::branch_prepass): Usetromey2001-11-251-2/+2
| | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47330 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/Class.h (Class): Made _Jv_BytecodeVerifier a friend.tromey2001-11-051-1/+7
| | | | | | | | | | | | | | | | | | | * Makefile.in: Rebuilt. * Makefile.am (libgcj_la_SOURCES): Added verify.cc. * verify.cc: New file. * include/java-interp.h (_Jv_count_arguments): Declare. (_Jv_VerifyMethod): Likewise. (class _Jv_InterpMethod): Made _Jv_BytecodeVerifier a friend. (class _Jv_InterpException): Likewise. * resolve.cc (_Jv_count_arguments): Renamed from count_arguments. No longer static. Updated callers. * defineclass.cc (int_bits_to_float): Removed. (long_bits_to_double): Likewise. (prepare_pool_entry): Updated. (handleCodeAttribute): Verify method (commented out for now). git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46796 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/jni.h (struct JNINativeInterface) [GetStringLength]:tromey2001-10-271-1/+1
| | | | | | | Returns jsize, not jint. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46569 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/boehm-gc.h: Call thread local allocation functionshboehm2001-10-251-2/+18
| | | | | | | if THREAD_LOCAL_ALLOC is defined. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46490 138bc75d-0d04-0410-961f-82ee72b054a4
* * prims.cc (_Jv_Abort): Always print error message using fprintf,bryce2001-10-231-0/+3
| | | | | | | | | | | | don't try to allocate. (_Jv_CreateJavaVM): Set gcj::runTimeInitialized. * include/jvm.h (gcj::runTimeInitialized): New variable declaration. * java/lang/natClassLoader.cc (_Jv_RegisterClassHookDefault): Handle duplicate class registration with JvFail if the runtime hasn't been initialized yet. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46424 138bc75d-0d04-0410-961f-82ee72b054a4
* Eliminate use of C++ static constructors.bryce2001-10-161-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * interpret.cc: Remove static Utf8Consts. Use namespace gcj. * jni.cc: Likewise. * resolve.cc: Likewise. * defineclass.cc: Likewise. (_Jv_ClassReader::handleClassBegin): Synchronize call to _Jv_RegisterClass. * include/jvm.h (void_signature, clinit_name, init_name, finit_name): Declare in namespace gcj. * java/lang/Class.h (Class): Remove initialization for primitive types. (friend void _Jv_InitPrimClass): This is in prims.cc. * prims.cc (_Jv_InitPrimClass): Do primitive type initialization here instead. (void_signature, clinit_name, init_name, finit_name): Define in namespace gcj. (_Jv_CreateJavaVM): Call _Jv_InitThreads, _Jv_InitGC, and _Jv_InitializeSyncMutex from here. Initialize Utf8 constants. Initialize primitive types. * java/lang/natClassLoader.cc (_Jv_RegisterClasses): Don't call initialization routines. Don't synchronize. * java/lang/natRuntime.cc (_load): Synchronize on java.lang.Class across dlopen call. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46282 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-10-15 Hans Boehm <Hans_Boehm@hp.com>tromey2001-10-151-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | * java/lang/natObject.cc (heavy_lock): Moved fields old_client_data, old_finalization_proc near beginning. (heavy_lock_finalization_proc): Now inline; changed type of argument. (JV_SYNC_TABLE_SZ): Now 2048. (mp): New global. (spin): `mp' now global. (heavy_lock_obj_finalization_proc): Updated to correctly handle heavy lock finalization. (remove_all_heavy): New function. (maybe_remove_all_heavy): Likewise. (_Jv_MonitorEnter): Throw exception if object is NULL. (_Jv_MonitorExit): Likewise. Also, clear long lists of unlocked heavy locks. * include/jvm.h (_Jv_AllocTraceTwo): Declare. * nogc.cc (_Jv_AllocTraceTwo): New function. * boehm.cc (trace_two_vtable): New global. (_Jv_AllocTraceTwo): New function. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46271 138bc75d-0d04-0410-961f-82ee72b054a4
* * gnu/gcj/runtime/natFinalizerThread.cc: New file.tromey2001-10-101-0/+3
| | | | | | | | | | | | | | | | | | | | | | | * java/lang/natRuntime.cc: Include FinalizerThread.h. (runFinalization): Call finalizerReady. * nogc.cc (_Jv_GCInitializeFinalizers): New function. * prims.cc: Include VirtualMachineError.h, FinalizerThread.h. (_Jv_CreateJavaVM): Start the finalizer thread. * no-threads.cc: Include InternalError.h. (_Jv_ThreadStart): Throw InternalError. (_Jv_ThreadInitData): Don't throw error if this is not the first thread. * Makefile.in: Rebuilt. * Makefile.am (ordinary_java_source_files): Added FinalizerThread.java. (nat_source_files): Added natFinalizerThread.cc. * include/jvm.h (_Jv_GCInitializeFinalizers): Declare. * boehm.cc (_Jv_GCInitializeFinalizers): New function. * gnu/gcj/runtime/FirstThread.java (run): Start finalizer thread. * gnu/gcj/runtime/FinalizerThread.java: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46163 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcj/javaprims.h: Rebuilt class list.tromey2001-10-021-0/+7
| | | | | | | | | | | | | | | | * boehm.cc (_Jv_GCRegisterDisappearingLink): New function. (_Jv_GCCanReclaimSoftReference): New function. * include/jvm.h (_Jv_GCRegisterDisappearingLink): Declare. (_Jv_GCCanReclaimSoftReference): Declare. * java/lang/ref/Reference.java (referent): Now a RawData. (create): Renamed from `created'. Added object argument. (Reference): Don't initialize `referent' here. * Makefile.in: Rebuilt. * Makefile.am (nat_source_files): Added new file. * java/lang/ref/natReference.cc: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45958 138bc75d-0d04-0410-961f-82ee72b054a4
* * gnu/gcj/runtime/SharedLibLoader.java: New class.bothner2001-09-291-0/+2
| | | | | | | | | | * gnu/gcj/runtime/natSharedLibLoader.cc: Native methods. * Makefile.am: Update accordingly. * configure.in: Add AC_CHECK_LIB for dlopen. * include/config.h.in: Add HAVE_DLOPEN. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45885 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/jvm.h (_Jv_VTable): Handle function descriptors for ia64;rth2001-09-211-7/+41
| | | | | | | | | | | add get_method, set_method, vtable_elt_size, new_vtable. (_Jv_ArrayVTable): Derive from _Jv_VTable. * resolve.cc (_Jv_PrepareClass): Use new _Jv_VTable methods. * interpret.cc (_Jv_InterpMethod::continue1): Likewise. * java/lang/natClassLoader.cc (_Jv_NewArrayClass): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45734 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/jvm.h (_Jv_AllocRawObj): New prototype.bryce2001-09-101-0/+3
| | | | | | | | | * boehm.cc (_Jv_AllocRawObj): Implement. * nogc.cc (_Jv_AllocRawObj): Likewise. * exception.cc (_Jv_Throw): Use _Jv_AllocRawObj, not GC_malloc. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45497 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/jvm.h: Declare _Jv_RegisterResource.green2001-09-061-0/+1
| | | | | | | | | | | | | | | | | | * gnu/gcj/Core.java, gnu/gcj/natCore.cc, gnu/gcj/protocol/core/Connection.java, gnu/gcj/protocol/core/Handler.java, gnu/gcj/protocol/core/CoreInputStream.java, gnu/gcj/protocol/core/natCoreInputStream.cc: New files. * java/net/URL.java (setURLStreamHandler): Use gnu.gcj.protocol.core.Handler for the core protocol. * gnu/gcj/runtime/VMClassLoader.java (init): Add "core:/" to the end of java.class.path. * Makefile.am (ordinary_java_source_files): Add new java files. (nat_source_files): Add new native code files. * Makefile.in: Rebuilt. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45450 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.am: New friends for java/lang/Thread.h.bryce2001-08-261-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * prims.cc (runFirst): Removed. (JvRunMain): Merged into _Jv_RunMain. Now just calls that. (_Jv_RunMain): Now takes either a klass or class name parameter. Create a gnu.gcj.runtime.FirstThread and attach the native thread to that, then run it using _Jv_ThreadRun. Remove special handling of jar files, instead pass is_jar parameter through to FirstThread. * gcj/javaprims.h: Add prototypes for _Jv_ThreadRun and new variant of _Jv_AttachCurrentThread. * gnu/gcj/runtime/FirstThread.java (FirstThread): Now extends Thread. (run): New method. Take care of looking up main class manifest attribute and calling forName if neccessary. Then call call_main. (call_main): New native method. * gnu/gcj/runtime/natFirstThread.cc (call_main): New function, code relocated from prims.cc. Look up and call main method. * java/lang/Thread.java (run_): Removed. * java/lang/natThread.cc (run_): Renamed to... (_Jv_ThreadRun): this. JVMPI notification code moved to ... (_Jv_NotifyThreadStart): here. New function. (countStackFrames, destroy, resume, suspend, stop): Throw UnsupportedOperationExceptions rather than JvFail'ing. (_Jv_AttachCurrentThread): New variant takes a Thread argument. Existing version wraps new variant. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45182 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/posix.h (_POSIX_PII_SOCKET): Define.ro2001-08-012-0/+8
| | | | | | | | | | | | | | | | | | | | | * configure.in (HAVE_SOCKLEN_T): Define. * java/net/natPlainSocketImpl.cc [!HAVE_SOCKLEN_T]: Move socklen_t definition up. (_JV_accept): New function, avoids Tru64 UNIX accept macro. (java::net::PlainSocketImpl::accept): Use it. Fixes PRs libgcj/3694, libgcj/3696. * configure.in (HAVE_STRUCT_IPV6_MREQ): New test. * acconfig.h (HAVE_STRUCT_IPV6_MREQ): Provide template. * configure, include/config.h.in: Regenerate. * java/net/natPlainDatagramSocketImpl.cc (union McastReq): Use it. (mcastGrp): Likewise. (java::net::PlainDatagramSocketImpl::setOption): Guard against missing IPV6_MULTICAST_IF. Fixes PR libgcj/3694. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44546 138bc75d-0d04-0410-961f-82ee72b054a4
* * configure.host: Enable hash synchronization for alpha*-*.jsturm2001-07-231-0/+18
| | | | | | | | | * include/posix-threads.h (_Jv_ThreadSelf): Added inline function for alpha. * java/lang/natObject.cc (compare_and_swap, release_set, compare_and_swap_release): Added inline functions for alpha. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44251 138bc75d-0d04-0410-961f-82ee72b054a4
* For PR java/2812:tromey2001-07-182-3/+10
| | | | | | | | | | | * libgcj.spec.in (*lib): Added LIBICONV. * configure: Rebuilt. * configure.in: Call AM_ICONV. Don't check for iconv function. Add parameters to JV_HASH_SYNCHRONIZATION define. * acinclude.m4 (AM_ICONV): New macro, from Bruno Haible. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44116 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-07-13 Alexandre Petit-Bianco <apbianco@redhat.com>apbianco2001-07-171-1/+0
| | | | | | | | | | * include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Removed unused local `_ebp.' (http://gcc.gnu.org/ml/java-patches/2001-q3/msg00070.html ) git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44093 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-07-06 Andrew Haley <aph@cambridge.redhat.com>aph2001-07-061-15/+0
| | | | | | | | * include/i386-signal.h: Don't do anything with unsigned divide overflow except throw an exception. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@43813 138bc75d-0d04-0410-961f-82ee72b054a4
* Fix for PR bootstrap/3281:tromey2001-07-031-1/+1
| | | | | | | | | | * aclocal.m4, configure: Rebuilt. * acinclude.m4 (LIBGCJ_CONFIGURE): Don't set libgcj_flagbasedir. Correctly compute libgcj_basedir. (mkinstalldirs): Define and subst. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@43739 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/java-interp.h (_Jv_InterpClass): Use JV_MARKOBJ_DECL.tromey2001-06-211-1/+3
| | | | | | | From Corey Minyard. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@43484 138bc75d-0d04-0410-961f-82ee72b054a4
* For PR bootstrap/3075:tromey2001-06-081-2/+2
| | | | | | | | | | | | | | | * configure, aclocal.m4, Makefile.am: Rebuilt. * configure.in: Pass `--with-auxdir' to subdir configure. Don't call AC_CONFIG_AUX_DIR or AC_CANONICAL_SYSTEM. Look for unwind.h relative to libgcj_basedir. * acinclude.m4 ((LIBGCJ_CONFIGURE): Call AC_CONFIG_AUX_DIR and AC_CANONICAL_SYSTEM here. * Makefile.am (CONFIG_STATUS_DEPENDENCIES): Use srcdir, not libgcj_basedir. ($(extra_headers)): New target. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@43034 138bc75d-0d04-0410-961f-82ee72b054a4
* Remove libgcjdata hack. Fix jv-scan usage in dejagnu.green2001-06-021-1/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42812 138bc75d-0d04-0410-961f-82ee72b054a4
* USE_LIBFFI changegreen2001-06-022-2/+7
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42791 138bc75d-0d04-0410-961f-82ee72b054a4
* Check for sigaction.green2001-06-021-0/+3
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42790 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/jvm.h (_Jv_ThrowNoMemory): Mark as noreturn.tromey2001-05-291-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42694 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-05-29 Andrew Haley <aph@redhat.com>aph2001-05-293-138/+31
| | | | | | | | | | | | | | | | | | | | | | | * include/i386-signal.h (MAKE_THROW_FRAME): Don't fix up frame pointer: the dwarf unwinder in libgcc will do everything that's needed. (HANDLE_DIVIDE_OVERFLOW): Tidy. Don't mess with stack frames any more than we absolutely need to. * configure.host (EXCEPTIONSPEC): Remove libgcj_sjlj on Alpha. * configure.in (SIGNAL_HANDLER): Use include/dwarf2-signal.h on Alpha. (SIGNAL_HANDLER): Test "$enable_sjlj_exceptions", not "$libgcj_sjlj". * configure: Rebuilt. * include/dwarf2-signal.h (MAKE_THROW_FRAME): Adjust PC for Alpha. (SIGNAL_HANDLER): Use siginfo style handler. (INIT_SEGV): Likewise. (INIT_FPE): Likewise. * include/ppc-signal.h: Delete whole file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42691 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-05-23 Tom Tromey <tromey@redhat.com>tromey2001-05-244-19/+211
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * posix-threads.cc (_Jv_self_cache): Renamed from self_cache. * gcj/Makefile.in: Rebuilt. * gcj/Makefile.am (gcj_HEADERS): Added libgcj-config.h. * gcj/javaprims.h: Include gcj/libgcj-config.h. * gcj/libgcj-config.h.in: New file. * libgcj.spec.in (*jc1): Added @HASH_SYNC_SPEC@. * configure: Rebuilt. * configure.in: Enable hash synchronization by default on some platforms. (HASH_SYNC_SPEC): New subst. (AC_CONFIG_HEADER): Added gcj/libgcj-config.h. Correctly use `test -z' instead of `test -n' in a couple places. (JV_HASH_SYNCHRONIZATION): Use AC_DEFINE; don't add to LIBGCJ_CXXFLAGS. * configure.host (enable_java_net_default): Initialize. (enable_hash_synchronization_default): New variable. 2001-05-23 Hans Boehm <Hans_Boehm@hp.com> * boehm.cc (_Jv_MarkObj): Don't mark sync_info when hash synchronization in use. (_Jv_MarkArray): Likewise. (_Jv_AllocBytes): Don't check return result. (handle_out_of_memory): New function. (_Jv_InitGC): Set GC_oom_fn. (trace_one_vtable): New global. (_Jv_AllocTraceOne): New function. * configure.in: Added --enable-hash-synchronization. * defineclass.cc, prims.cc, resolve.cc, java/lang/natString.cc, java/net/natInetAddress.cc: Remove _Jv_AllocBytesChecked. * nogc.cc (_Jv_AllocObj): Throw out-of-memory. (_Jv_AllocArray): Likewise. (_Jv_AllocBytes): Likewise. (_Jv_AllocPtrFreeObject): New function. (_Jv_AllocTraceOne): Likewise. * posix-threads.cc (_Jv_ThreadRegister): Handle slow pthread_self(). (self_cache): New global. (_Jv_ThreadSelf_out_of_line): New function. * prims.cc (_Jv_AllocBytesChecked): Removed. (_Jv_ThrowNoMemory): New function. (_Jv_AllocObject): Don't check for null return from allocator. (_Jv_NewObjectArray): Likewise. (_Jv_AllocPtrFreeObject): New function. (_Jv_NewPrimArray): Allocate pointer-free object if possible. * include/javaprims.h (_Jv_AllocPtrFreeObject): Declare. (_Jv_MonitorEnter, _Jv_MonitorExit): Don't return value. * include/boehm-gc.h (_Jv_AllocObj): Define. (_Jv_AllocPtrFreeObj): Define. * include/jvm.h (_Jv_AllocPtrFreeObj): Declare. (_Jv_ThrowNoMemory): Declare. (_Jv_AllocTraceOne): Declare. (_Jv_AllocBytesChecked): Removed. * include/posix-threads.h (_Jv_MutexInit, _Jv_MutexLock, _Jv_MutexUnlock): Handle LOCK_DEBUG. (_Jv_ThreadSelf): Handle case where system pthread_self() is slow. * java/lang/Class.h (Class): Declare _Jv_AllocPtrFreeObj as friend. * java/lang/Object.h (sync_info): Conditional upon presence of hash synchronization. * java/lang/natObject.cc: Much new code to handle thin locks and hash synchronization. * java/lang/natString.cc (_Jv_AllocString): Allocate pointer-free object if possible. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42519 138bc75d-0d04-0410-961f-82ee72b054a4
* Implement invocation interface; don't create new thread for main.bothner2001-05-224-5/+20
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42428 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-05-18 Andrew Haley <aph@cambridge.redhat.com>aph2001-05-211-0/+72
| | | | | | | | | | * include/dwarf2-signal.h: New file. * configure.in (SYSDEP_SOURCES): Add dwarf2-signal.h for PPC. * configure.host (EXCEPTIONSPEC): Don't use sjlj on PPC. * configure: Rebuilt. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42400 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-05-18 Alexandre Petit-Bianco <apbianco@redhat.com>apbianco2001-05-191-2/+2
| | | | | | | | | | * include/posix-threads.h (_Jv_CondInit): `0' used in place of `NULL.' (_Jv_MutexInit): Likewise. (http://gcc.gnu.org/ml/java-patches/2001-q2/msg00245.html ) git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42303 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-05-18 Bryce McKinlay <bryce@waitaki.otago.ac.nz>bryce2001-05-181-3/+0
| | | | | | | | | | | | | | | * include/jvm.h: Move "#pragma GCC java_exceptions" to ... * gcj/javaprims.h: ... here. * gnu/gcj/io/shs.cc: Add "#pragma GCC java_exceptions". 2001-05-17 Martin Kahlert <martin.kahlert@infineon.com> * java/lang/natClass.cc (_Jv_FindIIndex): Fix an off by one error with length of ioffset table. (_Jv_IsAssignableFrom): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42248 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/cp:zack2001-05-131-0/+3
| | | | | | | | | | | | | | | | | | | | | * except.c (choose_personality_routine): Export. Add explanatory comment. Take an enum languages, not a boolean. (initialize_handler_parm): Adjust to match. * cp-tree.h: Prototype choose_personality_routine. * lex.c (handle_pragma_java_exceptions): New function. (init_cp_pragma): Register #pragma GCC java_exceptions. gcc: * extend.texi: Document #pragma GCC java_exceptions. libjava: * Makefile.am (libgcj_la_OBJECTS): Remove libsupc++convenience.la. * Makefile.in: Regenerate (by hand). * include/jvm.h: Add #pragma GCC java_exceptions at top of file. * doc/cni.sgml: Document #pragma GCC java_exceptions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@42027 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-04-27 Martin Kahlert <martin.kahlert@infineon.com>tromey2001-04-271-43/+43
| | | | | | | | | * include/jni.h (struct JNINativeInterface): Fixed types in Get/Set*ArrayRegion declarations. (class _Jv_JNIEnv): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41633 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-04-04 Andreas Jaeger <aj@suse.de>tromey2001-04-042-12/+9
| | | | | | | | | | | | | | * gcj/Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo. * gcj/Makefile.in: Rebuilt. * Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo. * Makefile.in: Rebuilt. * testsuite/Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo. * testsuite/Makefile.in: Rebuild. * include/Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo. * include/Makefile.in: Rebuild. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41100 138bc75d-0d04-0410-961f-82ee72b054a4
* 1.3-Compliant Implementation of java.io.File.bryce2001-04-011-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * java/lang/natSystem.cc (init_properties): Get "file.separator", "path.separator", and "java.io.tmpdir" from the File class, instead of setting them explicitly. * java/io/File.java: Do not canonicalize paths for security manager checks. Call init_native() from static initializer. Do not pass path argument to native methods. New native method declarations. Some security manager checks moved to checkWrite(). (equals): Check file system case sensitivity and act appropriatly. (hashCode): Likewise. (isHidden): New method implemented. (performList): Changed prototype. Now takes a class argument specifying the class of the returned array: Strings or File objects. Also added FileFilter argument. (listFiles): New variants with "File" return type implemented. (createTempFile): Use createNewFile(). Use maxPathLen. (setReadOnly): New method implemented. (listRoots): Likewise. (compareTo): Likewise. (setLastModified): Likewise. (checkWrite): New method. (setPath): Removed. * java/io/natFile.cc: Various functions no longer take canonical path argument. (stat): Handle ISHIDDEN query. (isAbsolute): Remove WIN32 cruft. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New method implemented. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native): New initialization function. * java/io/natFileWin32.cc: Various functions no longer take canonical path argument. (stat): Add FIXME about ISHIDDEN query. (performList): New arguments. Handle returning either File[] or String[] arrays. Check with FileFilter or FilenameFilter arguments as appropriate. Use an ArrayList, not a Vector, for the temporary list. (performSetReadOnly): New. Stubbed. (performListRoots): Likewise. (performSetLastModified): Likewise. (performCreate): Likewise. (init_native) New initialization function. * configure.in: Check for utime() and chmod(). * configure: Rebuilt. * include/config.h.in: Rebuilt. Resolves PR libgcj/1759. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40985 138bc75d-0d04-0410-961f-82ee72b054a4
* * jni.cc (_Jv_JNI_GetAnyFieldID): Handle unresolved fields.tromey2001-03-232-3/+3
| | | | | | | | | | | | * java/lang/reflect/natField.cc (getType): Use _Jv_ResolveField unconditionally. * include/jvm.h (_Jv_ResolveField): Declare. * include/java-interp.h (_Jv_ResolveField): Don't declare. * resolve.cc (_Jv_ResolveField): No longer conditional on INTERPRETER. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40785 138bc75d-0d04-0410-961f-82ee72b054a4
* * configure: Rebuilt.tromey2001-03-211-1/+0
| | | | | | | | | | | * configure.in (GCJFLAGS): Subst. * Makefile.in: Rebuilt. * Makefile.am (jv_convert_LDFLAGS): Added -shared-libgcc. (gij_LDFLAGS): Likewise. (JC1FLAGS): Added GCJFLAGS and removed -g. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40700 138bc75d-0d04-0410-961f-82ee72b054a4
* Change to sometimes include class name in ClassFormatError message.bothner2001-02-241-5/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40030 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-02-14 Andrew Haley <aph@redhat.com>aph2001-02-151-1/+1
| | | | | | | | * include/i386-signal.h (INIT_SEGV): Use a direct system call to set the handler. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@39724 138bc75d-0d04-0410-961f-82ee72b054a4
* 2001-01-26 Andrew Haley <aph@redhat.com>aph2001-01-301-2/+16
| | | | | | | (INIT_FPE): Use a direct system call to set the handler. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@39354 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/natSystem.cc: Include locale.h if it exists.tromey2001-01-121-0/+3
| | | | | | | | * configure: Rebuilt. * configure.in: Check for locale.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38957 138bc75d-0d04-0410-961f-82ee72b054a4
* For boehm-gc:bryce2000-12-303-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * configure.in: Rename THREADLIB to THREADLIBS. * Makefile.am (LINK): Add $(THREADLIBS) to libtool command line. This ensures that we link the correct version of the linuxthreads semaphore functions. * Makefile.in: Rebuilt. * configure: Rebuilt. * linux_thread.c (GC_thr_init, GC_suspend_handler): Add SIGABRT to the list of signals which are not blocked during suspend in the NO_SIGNALS case. For libjava: * Makefile.am (libgcj_la_LIBADD): Add $(THREADLIBS). This ensures that the correct versions of various linuxthreads functions get linked. * Makefile.in: Rebuilt. * java/lang/natThread.cc (finalize_native): New static function. Call _Jv_ThreadDestroyData. (initialize_native): Register finalizer for "data". * include/posix-threads.h (_Jv_ThreadInitData): New simpler prototype. (_Jv_ThreadDestroyData): New prototype. * include/win32-threads.h: Ditto. * include/no-threads.h: Ditto. * posix-threads.cc (_Jv_ThreadInitData): Implement new prototype. (_Jv_ThreadDestroyData): New function. Free native thread "data" and move mutex and condition variable destroy code from: (really_start): ...here. (_Jv_ThreadStart): Set PTHREAD_CREATE_DETACHED. * win32-threads.cc (_Jv_ThreadInitData): Implement new prototype. (_Jv_ThreadDestroyData): Implemented. * nogc.cc (_Jv_AllocObject): Use "void *" not "ptr_t". (_Jv_AllocArray): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38557 138bc75d-0d04-0410-961f-82ee72b054a4
* 2000-11-29 Bryce McKinlay <bryce@albatross.co.nz>bryce2000-11-291-0/+6
| | | | | | | | | | | * java/lang/natSystem.cc (init_properties): Set user.language and user.region. * configure.in: Check for setlocale. * configure: Rebuilt. * include/config.h.in: Rebuilt. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@37842 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud