aboutsummaryrefslogtreecommitdiff
path: root/libjava/include
AgeCommit message (Collapse)AuthorFilesLines
2001-08-26Makefile.am: New friends for java/lang/Thread.h.Bryce McKinlay1-2/+3
* Makefile.am: New friends for java/lang/Thread.h. * 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. From-SVN: r45182
2001-08-01re PR libgcj/3694 (natPlainDatagramSocketImpl.cc doesn't compile in ALPHA OSF1)Rainer Orth2-0/+8
* include/posix.h (_POSIX_PII_SOCKET): Define. * 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. From-SVN: r44546
2001-07-23configure.host: Enable hash synchronization for alpha*-*.Jeff Sturm1-0/+18
* configure.host: Enable hash synchronization for alpha*-*. * 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. From-SVN: r44251
2001-07-18For PR java/2812:Tom Tromey2-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. From-SVN: r44116
2001-07-17i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Removed unused local `_ebp.'Alexandre Petit-Bianco1-1/+0
2001-07-13 Alexandre Petit-Bianco <apbianco@redhat.com> * include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): Removed unused local `_ebp.' (http://gcc.gnu.org/ml/java-patches/2001-q3/msg00070.html ) From-SVN: r44093
2001-07-06i386-signal.h: Don't do anything with unsigned divide overflow except throw ↵Andrew Haley1-15/+0
an exception. 2001-07-06 Andrew Haley <aph@cambridge.redhat.com> * include/i386-signal.h: Don't do anything with unsigned divide overflow except throw an exception. From-SVN: r43813
2001-07-03re PR bootstrap/3281 (Installation failure (mkinstalldirs))Tom Tromey1-1/+1
Fix for PR bootstrap/3281: * aclocal.m4, configure: Rebuilt. * acinclude.m4 (LIBGCJ_CONFIGURE): Don't set libgcj_flagbasedir. Correctly compute libgcj_basedir. (mkinstalldirs): Define and subst. From-SVN: r43739
2001-06-21java-interp.h (_Jv_InterpClass): Use JV_MARKOBJ_DECL.Tom Tromey1-1/+3
* include/java-interp.h (_Jv_InterpClass): Use JV_MARKOBJ_DECL. From Corey Minyard. From-SVN: r43484
2001-06-08For PR bootstrap/3075:Tom Tromey1-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. From-SVN: r43034
2001-06-02Remove libgcjdata hack. Fix jv-scan usage in dejagnu.Anthony Green1-1/+0
From-SVN: r42812
2001-06-02USE_LIBFFI changeAnthony Green2-2/+7
From-SVN: r42791
2001-06-02Check for sigaction.Anthony Green1-0/+3
From-SVN: r42790
2001-05-29* include/jvm.h (_Jv_ThrowNoMemory): Mark as noreturn.Tom Tromey1-1/+1
From-SVN: r42694
2001-05-29i386-signal.h (MAKE_THROW_FRAME): Don't fix up frame pointer...Andrew Haley3-138/+31
2001-05-29 Andrew Haley <aph@redhat.com> * 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. From-SVN: r42691
2001-05-24[multiple changes]Tom Tromey4-19/+211
2001-05-23 Tom Tromey <tromey@redhat.com> * 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. From-SVN: r42519
2001-05-21Implement invocation interface; don't create new thread for main.Per Bothner4-5/+20
From-SVN: r42428
2001-05-21dwarf2-signal.h: New file.Andrew Haley1-0/+72
2001-05-18 Andrew Haley <aph@cambridge.redhat.com> * 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. From-SVN: r42400
2001-05-18posix-threads.h (_Jv_CondInit): `0' used in place of `NULL.'Alexandre Petit-Bianco1-2/+2
2001-05-18 Alexandre Petit-Bianco <apbianco@redhat.com> * 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 ) From-SVN: r42303
2001-05-18[multiple changes]Bryce McKinlay1-3/+0
2001-05-18 Bryce McKinlay <bryce@waitaki.otago.ac.nz> * 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. From-SVN: r42248
2001-05-13except.c (choose_personality_routine): Export.Zack Weinberg1-0/+3
gcc/cp: * 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. From-SVN: r42027
2001-04-27jni.h (struct JNINativeInterface): Fixed types in Get/Set*ArrayRegion ↵Tom Tromey1-43/+43
declarations. 2001-04-27 Martin Kahlert <martin.kahlert@infineon.com> * include/jni.h (struct JNINativeInterface): Fixed types in Get/Set*ArrayRegion declarations. (class _Jv_JNIEnv): Likewise. From-SVN: r41633
2001-04-04Makefile.am (AUTOMAKE_OPTIONS): Remove no-installinfo.Andreas Jaeger2-12/+9
2001-04-04 Andreas Jaeger <aj@suse.de> * 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. From-SVN: r41100
2001-04-011.3-Compliant Implementation of java.io.File.Bryce McKinlay1-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. From-SVN: r40985
2001-03-23jni.cc (_Jv_JNI_GetAnyFieldID): Handle unresolved fields.Tom Tromey2-3/+3
* jni.cc (_Jv_JNI_GetAnyFieldID): Handle unresolved fields. * 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. From-SVN: r40785
2001-03-21configure: Rebuilt.Tom Tromey1-1/+0
* configure: Rebuilt. * configure.in (GCJFLAGS): Subst. * Makefile.in: Rebuilt. * Makefile.am (jv_convert_LDFLAGS): Added -shared-libgcc. (gij_LDFLAGS): Likewise. (JC1FLAGS): Added GCJFLAGS and removed -g. From-SVN: r40700
2001-02-23Change to sometimes include class name in ClassFormatError message.Per Bothner1-5/+5
From-SVN: r40030
2001-02-15i386-signal.h (INIT_SEGV): Use a direct system call to set the handler.Andrew Haley1-1/+1
2001-02-14 Andrew Haley <aph@redhat.com> * include/i386-signal.h (INIT_SEGV): Use a direct system call to set the handler. From-SVN: r39724
2001-01-302001-01-26 Andrew Haley <aph@redhat.com>Andrew Haley1-2/+16
(INIT_FPE): Use a direct system call to set the handler. From-SVN: r39354
2001-01-12natSystem.cc: Include locale.h if it exists.Tom Tromey1-0/+3
* java/lang/natSystem.cc: Include locale.h if it exists. * configure: Rebuilt. * configure.in: Check for locale.h. From-SVN: r38957
2000-12-30For boehm-gc:Bryce McKinlay3-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. From-SVN: r38557
2000-11-29natSystem.cc (init_properties): Set user.language and user.region.Bryce McKinlay1-0/+6
2000-11-29 Bryce McKinlay <bryce@albatross.co.nz> * java/lang/natSystem.cc (init_properties): Set user.language and user.region. * configure.in: Check for setlocale. * configure: Rebuilt. * include/config.h.in: Rebuilt. From-SVN: r37842
2000-11-27Makefile.in: Rebuilt.Tom Tromey1-0/+1
* Makefile.in: Rebuilt. * Makefile.am (core_java_source_files): Added RuntimePermission.java. * java/lang/RuntimePermission.java: Imported from Classpath. * java/lang/Thread.java (getContextClassLoader): Now synchronized. Added security code. (setContextClassLoader): Likewise. From-SVN: r37772
2000-10-09re GNATS libgcj/341 (Throwable.printStackTrace() isn't working)Bryce McKinlay1-3/+0
2000-10-09 Bryce McKinlay <bryce@albatross.co.nz> * include/jvm.h: Enable __builtin_expect(). * name-finder.cc (lookup): Don't trust dladdr() if the address is from the main program. Fix for PR libgcj/341. From-SVN: r36794
2000-10-06Rebuilt Makefile.insTom Tromey1-1/+5
From-SVN: r36741
2000-10-06natField.cc (BooleanClass): Don't define.Tom Tromey1-2/+2
* java/lang/reflect/natField.cc (BooleanClass): Don't define. * java/lang/reflect/natArray.cc (BooleanClass): Don't define. * java/lang/Class.h (Object): Added `class$' field. * java/lang/Object.h (Object): Added `class$' field. * defineclass.cc (ClassClass): Use `class$' form. (ClassObject): Likewise. * resolve.cc (ClassObject): Use `class$' form. (ObjectClass): Likewise. * interpret.cc (ClassError): Removed. * java/net/natPlainDatagramSocketImpl.cc (BooleanClass): Use `class$' form. (IntegerClass): Likewise. * java/net/natPlainSocketImpl.cc (BooleanClass): Use `class$' form. * java/lang/natClassLoader.cc (CloneableClass): Use `class$' form. (ObjectClass, ClassClass, VMClassLoaderClass, ClassLoaderClass, SerializableClass): Likewise. Include Serializable.h, Cloneable.h. * java/lang/natSystem.cc (SystemClass): Removed. (init_properties): Use `class$' form. * java/lang/natObject.cc (CloneableClass): Removed. (clone): Use `class$' form. * java/lang/natClass.cc (CloneableClass): Use `class$' form. (ObjectClass, ErrorClass, ClassClass, MethodClass, FieldClass, ConstructorClass): Likewise. * java/lang/reflect/natMethod.cc (ObjectClass): Use `class$' form. (ClassClass, VoidClass, ByteClass, ShortClass, CharacterClass, IntegerClass, LongClass, FloatClass, DoubleClass): Likewise. * java/io/natObjectInputStream.cc (ObjectClass): Use `class$' form. (ClassClass): Likewise. * include/jvm.h (StringClass): Use `class$' form. * prims.cc (ObjectClass): Removed. (_Jv_RunMain): Use `class$' form. (_Jv_AllocObject): Likewise. * jni.cc (ClassClass): Use `class$' form. (ThrowableClass): Likewise. (ObjectClass): Likewise. (MethodClass): Likewise. (ThreadGroupClass): Likewise. (NativeThreadClass): Likewise. * boehm.cc (ObjectClass): Removed. (ClassClass): Removed. (_Jv_MarkObj): Use `class$' form. * gcj/field.h (JvFieldIsRef): Use `class$' form. Include RawData.h. From-SVN: r36740
2000-09-30Implement bitmap descriptor based marking for Boehm GC.Hans Boehm1-4/+11
2000-09-30 Hans Boehm <boehm@acm.org> Bryce McKinlay <bryce@albatross.co.nz> Implement bitmap descriptor based marking for Boehm GC. * configure.in: Define JC1GCSPEC. Set it if boehm-gc is used. * configure: Rebuilt. * libgcj.spec.in: Pass JC1GCSPEC to jc1. * include/jvm.h (struct _Jv_VTable): New field `gc_descr'. New inline method get_finalizer(). (struct _Jv_ArrayVTable): Ditto. Declare method array with NUM_OBJECT_METHODS elements instead of NUM_OBJECT_METHODS + 1. (_Jv_AllocObj): Add new jclass parameter. (_Jv_AllocArray): Ditto. (_Jv_BuildGCDescr): New prototype. * prims.cc (_Jv_AllocObject): Rename parameter `c' to `klass'. Pass `klass' to _Jv_AllocObj. Don't set the new object's vtable. Use get_finalizer() instead of direct finalizer vtable offset. (_Jv_NewObjectArray): Rename parameter `clas' to `klass'. Pass `klass' to _Jv_AllocArray. Don't set the new array's vtable. (_Jv_NewPrimArray): Call _Jv_FindArrayClass before _Jv_AllocObj. Pass `klass' to _Jv_AllocObj. Don't set the new array's vtable. * resolve.cc (METHOD_NOT_THERE, METHOD_INACCESSIBLE): New #defines. (_Jv_ResolvePoolEntry): Use METHOD_NOT_THERE and METHOD_INACCESSIBLE. (_Jv_DetermineVTableIndex): Ditto. (_Jv_PrepareClass): Ditto. Remove offset-by-one adjustments from vtable calculations to account for new gc_descr field. * boehm.cc: #include gc_gcj.h. (obj_kind_x, obj_free_list): `#if 0'-ed away. (_Jv_MarkObj): Check that vtable doesn't point to a cleared object. New commentary from HB. Mark the classes vtable. (_Jv_MarkArray): Check that vtable doesn't point to a cleared object. (GC_DEFAULT_DESCR): New #define. (_Jv_BuildGCDescr): New function. Use GC_DEFAULT_DESCR, for now. (_Jv_AllocObj): New parameter `klass'. Use GC_GCJ_MALLOC (). (_Jv_AllocArray): New parameter `klass'. Allocate with GC_MALLOC and scan conservativly if size is less than min_heap_addr. Set vtable pointer of new object before returning. (_Jv_AllocBytes): Use GC_MALLOC_ATOMIC, not GC_GENERIC_MALLOC. (_Jv_InitGC): Call GC_init_gcj_malloc(). Don't set up marking and allocation for obj_kind_x. * nogc.cc (_Jv_BuildGCDescr): New function. Return 0. (_Jv_AllocObj): Set vtable on returned object. (_Jv_AllocArray): Ditto. * java/lang/Class.h (_Jv_NewObjectArray): No longer a friend. (_Jv_NewPrimArray): Ditto. (_Jv_AllocObj): Declare as a friend. (_Jv_AllocArray): Ditto. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Copy gc_descr from &ObjectClass into new array class. Remove offset-by-one adjustments from `method' size calculations to account for gc_descr field. Co-Authored-By: Bryce McKinlay <bryce@albatross.co.nz> From-SVN: r36679
2000-09-11BytesToUnicode.java (getDefaultDecoder): Let default decoder use iconv.Tom Tromey1-0/+6
* gnu/gcj/convert/BytesToUnicode.java (getDefaultDecoder): Let default decoder use iconv. * gnu/gcj/convert/UnicodeToBytes.java (getDefaultEncoder): Let default encoder use iconv. * configure: Rebuilt. * configure.in: Check for nl_langinfo and <langinfo.h>. * java/lang/natSystem.cc (file_encoding): New function. (DEFAULT_FILE_ENCODING): Define to file_encoding() if possible. From-SVN: r36306
2000-09-06jvm.h (_Jv_HashCode): Cast object ptr to `unsigned long' to avoid long long ↵Jeff Sturm1-2/+3
division. 2000-09-06 Jeff Sturm <jeff.sturm@appnet.com> * include/jvm.h (_Jv_HashCode): Cast object ptr to `unsigned long' to avoid long long division. From-SVN: r36215
2000-08-30Makefile.in: Rebuilt.Tom Tromey1-2/+2
* Makefile.in: Rebuilt. * Makefile.am (AM_CXXFLAGS): Added -fdollars-in-identifiers. From-SVN: r36069
2000-08-26Makefile.in: Rebuilt.Anthony Green1-2/+2
2000-08-26 Anthony Green <green@redhat.com> * Makefile.in: Rebuilt. * Makefile.am (java/lang/ClassLoader.h): Make _Jv_RunMain a friend. * prims.cc: Include ClassLoader.h. (_Jv_RunMain): When executing jar files, classpath must be the jar file only. Lose our reference to the system ClassLoader in order to get a new one with the correct classpath. * java/lang/natSystem.cc (init_properties): When executing a jar file, only use the jar file for java.class.path. * gnu/gcj/runtime/VMClassLoader.java: Use the canonical file name for bytecode archives. * gnu/gcj/runtime/FirstThread.java: Handle case where manifest exists, but not Main-Class. From-SVN: r35999
2000-08-22Makefile.in: Rebuilt.Mark Wielaard1-2/+2
2000-08-21 Mark Wielaard <mark@klomp.org> * Makefile.in: Rebuilt. * Makefile.am (java/lang/reflect/Constructor.h): Declare Class as a `friend class'. (java/lang/reflect/Field.h): Likewise. (java/lang/reflect/Method.h): Likewise. (gnu/gcj/runtime/VMClassLoader.h): Declare ClassLoader as a `friend class'. From-SVN: r35863
2000-08-21natSystem.cc (init_properties): Change sourceware reference to ↵Anthony Green2-1/+4
sources.redhat.com. Sun Aug 20 21:02:48 2000 Anthony Green <green@redhat.com> * java/lang/natSystem.cc (init_properties): Change sourceware reference to sources.redhat.com. * include/java-props.h: Add _Jv_Jar_Class_Path. * prims.cc: Ditto. Set it from `gij -jar file' option. * java/lang/natSystem.cc (init_properties): Set java.class.path from {gij -jar file}:{CLASSPATH variable}:{-Djava.class.path= or .} * java/util/PropertyPermission.java: Import from GNU Classpath. * Makefile.in: Rebuilt. * Makefile.am: Add java/util/PropertyPermission.java. * java/lang/System.java: Add setProperty method. * gij.cc (main): Add -jar option to execute jar files. (help): Describe -jar option. * prims.cc (_Jv_RunMain): Add support for jar execution mode. * gnu/gcj/tools/Gij.java: New file. * include/jvm.h: Add is_jar argument to _Jv_RunMain. * gnu/gcj/runtime/FirstThread.java (main): New method. * java/util/jar/Attributes.java: Correct comment spelling. From-SVN: r35829
2000-08-19Attributes.java, [...]: Imported from Classpath.Anthony Green1-2/+2
Sat Aug 19 11:00:53 2000 Anthony Green <green@redhat.com> * java/util/jar/Attributes.java, java/util/jar/JarEntry.java, java/util/jar/JarException.java, java/util/jar/JarFile.java, java/util/jar/JarInputStream.java, java/util/jar/JarOutputStream.java, java/util/jar/Manifest.java, java/util/Set.java, java/util/Map.java, java/util/Bucket.java, java/util/AbstractSet.java, java/util/BasicMapEntry.java, java/security/cert/CRL.java, java/security/cert/CRLException.java, java/security/cert/Certificate.java, java/security/cert/CertificateEncodingException.java, java/security/cert/CertificateException.java, java/security/cert/CertificateExpiredException.java, java/security/cert/CertificateFactory.java, java/security/cert/CertificateFactorySpi.java, java/security/cert/CertificateNotYetValidException.java, java/security/cert/CertificateParsingException.java, java/security/cert/X509CRL.java, java/security/cert/X509CRLEntry.java, java/security/cert/X509Certificate.java, java/security/cert/X509Extension.java: Imported from Classpath. * java/util/Hashtable.java: Imported from Classpath. * java/util/zip/ZipInputStream.java: Create stub for createZipEntry. * gcj/javaprims.h: Updated class list. * Makefile.in, gcj/Makefile.in: Rebuilt. * Makefile.am (ordinary_java_source_files): Add these new classes. From-SVN: r35809
2000-08-16jvm.h (_Jv_HashCode): New hash code.Andrew Haley1-1/+3
2000-08-15 Andrew Haley <aph@cygnus.com> * include/jvm.h (_Jv_HashCode): New hash code. From-SVN: r35744
2000-08-02Makefile.in: Rebuilt.Tom Tromey1-0/+27
* Makefile.in: Rebuilt. * Makefile.am (libgcj_la_SOURCES): Added posix.cc. * java/net/natPlainSocketImpl.cc: Include posix.h. (accept): Use _Jv_select. * java/net/natPlainDatagramSocketImpl.cc: Include posix.h. (receive): Use _Jv_select. * java/io/natFileDescriptorPosix.cc: Include posix.h. (available): Use _Jv_select. * java/lang/natSystem.cc: Include posix.h. (currentTimeMillis): Use _Jv_gettimeofday. * include/posix.h: New file. * posix.cc: New file. From-SVN: r35435
2000-06-30* include/jni.h: Include <gcj/array.h>. Fixes PR libgcj/270.Tom Tromey1-0/+1
From-SVN: r34818
2000-06-16re GNATS libgcj/261 (Macro-inconsistency)Tom Tromey2-4/+4
Fix for PR libgcj/261: * include/win32-signal.h (MAKE_THROW_FRAME): Added `_exception' argument. * include/sparc-signal.h (MAKE_THROW_FRAME): Added `_exception' argument. (This is a patch from long ago that somehow went missing.) From-SVN: r34575
2000-05-31prims.cc (DECLARE_PRIM_TYPE): Define a vtable as well.Tom Tromey1-0/+12
* prims.cc (DECLARE_PRIM_TYPE): Define a vtable as well. (_Jv_PrimClass): Set `methods' by calling _Jv_FindArrayClass. * include/jvm.h (struct _Jv_ArrayVTable): Declare. (NUM_OBJECT_METHODS): New define. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Added `array_vtable' parameter. Added assertion. * java/lang/Class.h (_Jv_FindArrayClass): Added `array_vtable' parameter. From-SVN: r34312
2000-05-30name-finder.h: Include <sys/wait.h>.Tom Tromey1-3/+7
* include/name-finder.h: Include <sys/wait.h>. (_Jv_name_finder::pid): Now of type `pid_t'. (_Jv_name_finder::~_Jv_name_finder): Call waitpid(). * java/lang/Throwable.java (CPlusPlusDemangler.close): Call `proc.waitFor()'. From-SVN: r34279
2000-05-19Jumbo patch:Tom Tromey4-7/+14
* Imported beans and serialization * Updated IA-64 port * Miscellaneous bug fixes From-SVN: r34028