+2000-06-20 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * java/lang/ThreadGroup.java: Merged with classpath.
+ * prims.cc (_Jv_RunMain): Don't use `main_group'.
+ * gnu/gcj/runtime/FirstThread.java: Remove ThreadGroup constructor
+ argument.
+ * java/lang/Thread.java (Thread): Bootstrap initial thread from
+ ThreadGroup.root if Thread.currentThread is null. Honour the
+ ThreadGroup's max priority setting.
+
+2000-06-18 Tom Tromey <tromey@cygnus.com>
+
+ * java/lang/natClass.cc (forName): Removed dead code. Initialize
+ returned class. For PR gcj/260.
+
+2000-06-16 Tom Tromey <tromey@cygnus.com>
+
+ 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.)
+
+2000-06-15 Tom Tromey <tromey@cygnus.com>
+
+ * gnu/gcj/convert/natIconv.cc (iconv_adapter): New function.
+ (read): Use it.
+ (write): Likewise.
+
+2000-06-15 Bryce McKinlay <bryce@albatross.co.nz>
+
+ Fix for PR java.lang/258:
+ * prims.cc (_Jv_PrimClass): Set state of primitive class to
+ JV_STATE_DONE, to prevent accidental initialization.
+ * java/lang/natClass.cc (_Jv_IsAssignableFrom): Call
+ _Jv_InterfaceAssignableFrom if target is an interface and source is an
+ interface or an abstract class. Remove redundant initializeClass calls.
+ Remove duplicate if_idt test.
+ (_Jv_InterfaceAssignableFrom): New function.
+ * java/lang/Class.h (_Jv_InterfaceAssignableFrom): Prototype.
+
+2000-05-31 Tom Tromey <tromey@cygnus.com>
+
+ * 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.
+
+2000-05-31 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * gcj/cni.h: Include <string.h>.
+ * defineclass.cc: Include <alloca.h>.
+ * interpret.cc: Ditto.
+ * gij.cc: Include <stdlib.h>.
+
+2000-05-30 Tom Tromey <tromey@cygnus.com>
+
+ * 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()'.
+
+2000-05-24 Warren Levy <warrenl@cygnus.com>
+
+ * java/io/ObjectOutputStream.java (writeObject): Use component type
+ when writing arrays.
+ Fixed typo.
+
+2000-05-20 Bryce McKinlay <bryce@albatross.co.nz>
+
+ Fix for PR libgcj/226:
+ * java/lang/Class.h (_Jv_InitClass): Don't call __builtin_expect,
+ since this is an installed header.
+
+ Fix for PR libgcj/228:
+ * java/util/zip/ZipFile (getInputStream): Create inflater with
+ nowrapper option.
+
+ * java/util/zip/natInflater.cc (inflate): Throw zlib's error message
+ with DataFormatException.
+
+2000-05-20 Tom Tromey <tromey@cygnus.com>
+
+ * Makefile.in: Rebuilt.
+ * Makefile.am (hack1): Removed.
+ (awto_files): Likewise.
+ (libgcjawt_la_SOURCES): Likewise.
+ (EXTRA_libgcjawt_la_SOURCES): Likewise.
+ (libgcjawt_la_DEPENDENCIES): Likewise.
+ (libgcjawt_la_LIBADD): Likewise.
+ (libgcjawt_la_LDFLAGS): Likewise.
+ (libgcjawt_la_LINK): Likewise.
+ ($(awt_java_source_files:.java=.class)): Likewise.
+ (libgcj.zip): Don't depend on AWT files.
+ (MOSTLYCLEANFILES): Don't include AWT files.
+ ($(awto_files)): Removed.
+ (nat_headers): Removed AWT files.
+ (cond_awt_java_source_files): Removed.
+ (ordinary_java_source_files): Added awt_java_source_files.
+ * libgcj.spec.in (*lib): Removed -lgcjawt.
+ * configure: Rebuilt.
+ * configure.in: Removed --enable-java-awt option.
+
+2000-05-20 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * java/util/zip/ZipEntry.java: Implement Cloneable, per JDK1.2 docs.
+ (ZipEntry): Copy the `name' field.
+ (clone): Implement JDK1.2 method.
+ (setCompressedSize): ditto.
+ (hashCode): ditto.
+
+2000-05-19 Tom Tromey <tromey@cygnus.com>
+
+ * java/io/BufferedWriter.java: Merged with Classpath.
+ * java/io/BufferedOutputStream.java: Merged with Classpath.
+
+2000-05-16 Andrew Haley <aph@cygnus.com>
+
+ * sysdep/ia64.c (ia64_backtrace_helper): Pass NULL pointer to
+ build_ia64_frame_state.
+ * sysdep/ia64-frame.h (build_ia64_frame_state): Match with
+ defintion in gcc.
+
+2000-05-15 Warren Levy <warrenl@cygnus.com>
+
+ * gnu/gcj/beans/BeanInfoEmbryo.java: Removed.
+ * gnu/gcj/beans/EmptyBeanInfo.java: Removed.
+ * gnu/gcj/beans/ExplicitBeanInfo.java: Removed.
+ * gnu/gcj/beans/IntrospectionIncubator.java: Removed.
+ * gnu/gcj/beans/editors/ColorEditor.java: Removed.
+ * gnu/gcj/beans/editors/FontEditor.java: Removed.
+ * gnu/gcj/beans/editors/NativeBooleanEditor.java: Removed.
+ * gnu/gcj/beans/editors/NativeByteEditor.java: Removed.
+ * gnu/gcj/beans/editors/NativeDoubleEditor.java: Removed.
+ * gnu/gcj/beans/editors/NativeFloatEditor.java: Removed.
+ * gnu/gcj/beans/editors/NativeIntEditor.java: Removed.
+ * gnu/gcj/beans/editors/NativeLongEditor.java: Removed.
+ * gnu/gcj/beans/editors/NativeShortEditor.java: Removed.
+ * gnu/gcj/beans/editors/StringEditor.java: Removed.
+ * gnu/gcj/beans/info/ComponentBeanInfo.java: Removed.
+ * gnu/gcj/io/ClassLoaderObjectInputStream.java: Removed.
+ * gnu/gcj/io/NullOutputStream.java: Removed.
+ * gnu/gcj/io/ObjectIdentityWrapper.java: Removed.
+ * gnu/gcj/lang/ArrayHelper.java: Removed.
+ * gnu/gcj/lang/ClassHelper.java: Removed.
+ * gnu/gcj/lang/reflect/TypeSignature.java: Removed.
+
+ * gnu/java/beans/BeanInfoEmbryo.java: New file.
+ * gnu/java/beans/EmptyBeanInfo.java: New file.
+ * gnu/java/beans/ExplicitBeanInfo.java: New file.
+ * gnu/java/beans/IntrospectionIncubator.java: New file.
+ * gnu/java/beans/editors/ColorEditor.java: New file.
+ * gnu/java/beans/editors/FontEditor.java: New file.
+ * gnu/java/beans/editors/NativeBooleanEditor.java: New file.
+ * gnu/java/beans/editors/NativeByteEditor.java: New file.
+ * gnu/java/beans/editors/NativeDoubleEditor.java: New file.
+ * gnu/java/beans/editors/NativeFloatEditor.java: New file.
+ * gnu/java/beans/editors/NativeIntEditor.java: New file.
+ * gnu/java/beans/editors/NativeLongEditor.java: New file.
+ * gnu/java/beans/editors/NativeShortEditor.java: New file.
+ * gnu/java/beans/editors/StringEditor.java: New file.
+ * gnu/java/beans/info/ComponentBeanInfo.java: New file.
+ * gnu/java/io/ClassLoaderObjectInputStream.java: New file.
+ * gnu/java/io/NullOutputStream.java: New file.
+ * gnu/java/io/ObjectIdentityWrapper.java: New file.
+ * gnu/java/lang/ArrayHelper.java: New file.
+ * gnu/java/lang/ClassHelper.java: New file.
+ * gnu/java/lang/reflect/TypeSignature.java: New file.
+
+ * Makefile.am: Updated for moving Classpath files from gnu/gcj
+ namespace back to the original Classpath gnu/java namespace.
+ * Makefile.in: Rebuilt.
+
+ * java/beans/Beans.java: Namespace change.
+ * java/beans/EventSetDescriptor.java: Namespace change.
+ * java/beans/Introspector.java: Namespace change.
+ * java/beans/PropertyEditorManager.java: Namespace change.
+ * java/io/ObjectInputStream.java: Namespace change.
+ * java/io/ObjectOutputStream.java: Namespace change.
+ * java/io/ObjectStreamClass.java: Namespace change.
+ * java/io/ObjectStreamField.java: Namespace change.
+
+2000-04-21 Warren Levy <warrenl@cygnus.com>
+
+ * java/io/ObjectInputStream.java: Reverted workarounds of 2000-04-13
+ now that compiler patch is available.
+ Removed unneeded System.loadLibrary.
+ * java/io/ObjectOutputStream.java: Removed unneeded System.loadLibrary.
+ * java/io/ObjectStreamClass.java: Removed unneeded System.loadLibrary.
+
+2000-04-19 Andrew Haley <aph@cygnus.com>
+
+ * java/lang/natClass.cc (_Jv_IsAssignableFrom): Make sure source
+ and target classes have been initialized.
+
+2000-04-19 Andrew Haley <aph@cygnus.com>
+
+ * java/lang/String.java: implement Serializable, Comparable.
+ (compareTo (Object)): New method.
+
+2000-04-19 Warren Levy <warrenl@cygnus.com>
+
+ * java/io/ObjectStreamClass.java (getDefinedSUID): Use getDeclaredField
+ instead of getField to retrieve non-public field.
+ (getSerialPersistantFields): Ditto.
+
+2000-04-18 Warren Levy <warrenl@cygnus.com>
+
+ * mauve-libgcj: Turned off object serialization tests temporarily
+ due to compiler error.
+
+2000-04-17 Warren Levy <warrenl@cygnus.com>
+
+ * java/io/ObjectInputStream.java (DEBUG): Disabled unused method
+ to avoid build problem.
+ (DEBUGln): Ditto.
+ * mauve-libgcj: Turned on object serialization tests.
+
+2000-04-17 Tom Tromey <tromey@cygnus.com>
+
+ * libgcj.spec.in (*lib): Added -lgcjawt.
+
+2000-04-17 Andrew Haley <aph@cygnus.com>
+
+ * Makefile.am: Add new files:
+ gnu/gcj/io/SimpleSHSStream.java, gnu/gcj/io/natSimpleSHSStream.cc,
+ gnu/gcj/io/shs.cc.
+ * Makefile.in: Rebuilt.
+
+ * java/lang/natClass.cc (_Jv_IsAssignableFrom): Check for an
+ interface that has no implementations.
+ Check for an attempt to assign an abstract class to an interface.
+
+ * java/io/ObjectStreamClass.java (setUID): Use a SimpleSHSStream
+ if we fail to find MessageDigest.getInstance ("SHA").
+
+ * gnu/gcj/io/SimpleSHSStream.java: New file.
+ * gnu/gcj/io/natSimpleSHSStream.java: New file.
+ * gnu/gcj/io/shs.cc: New file.
+ * gnu/gcj/io/shs.h: new file.
+
+ * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Make arrays
+ serializable.
+
+ * gnu/gcj/lang/reflect/TypeSignature.java: Don't remove
+ punctuation from the classname of an array element.
+
+ * gcj/javaprims.h: Add SimpleDigestStream.
+
+2000-04-17 Andrew Haley <aph@cygnus.com>
+
+ * java/lang/natClass.cc (getPrivateField): Make recursive calls
+ to getPrivateField for superclasses.
+
+2000-04-14 Andrew Haley <aph@cygnus.com>
+
+ * Makefile.am: Add new files:
+ java/io/ObjectOutputStream$PutField.h,
+ java/io/ObjectInputStream$GetField.h,java/io/natObjectInputStream.cc,
+ java/io/natObjectOutputStream.cc
+ * Makefile.in: Rebuilt.
+ * gcj/Makefile.in: Rebuilt.
+ * include/Makefile.in: Rebuilt.
+ * java/lang/Class.h (getPrivateField): New method.
+ (getPrivateMethod): Ditto.
+ Make java::io::ObjectOutputStream, java::io::ObjectInputStream,
+ and java::io::ObjectStreamClass our friends.
+ * java/lang/natClass.cc (getPrivateField): New method.
+ (getPrivateMethod): Ditto.
+ (_Jv_IsAssignableFrom): Return false for Interface with no IDT.
+ * gcj/javaprims.h: Add serialization classes.
+ * java/io/ObjectInputStream.java (setBooleanField): Rewrite in Java.
+ (setByteField): Ditto.
+ (setCharField): Ditto.
+ (setDoubleField): Ditto.
+ (setFloatField): Ditto.
+ (setIntField): Ditto.
+ (setLongField): Ditto.
+ (setShortField): Ditto.
+ (setObjectField): Ditto.
+ * java/io/ObjectOutputStream.java: (getBooleanField): Rewrite in
+ Java.
+ (getByteField): Ditto.
+ (getCharField): Ditto.
+ (getDoubleField): Ditto.
+ (getFloatField): Ditto.
+ (getIntField): Ditto.
+ (getLongField): Ditto.
+ (getShortField): Ditto.
+ (getObjectField): Ditto.
+ * java/io/ObjectStreamClass.java (hasClassInitializer): Rewrite in
+ Java.
+ (getSerialPersistantFields): Ditto.
+ (getDefinedSUID): Ditto.
+ * java/io/natObjectOutputStream.cc: New file.
+ * java/io/natObjectInputStream.cc: New file.
+
+2000-04-13 Warren Levy <warrenl@cygnus.com>
+
+ * java/io/ObjectInputStream.java: Temporary workarounds for compiler
+ problems. Revert to previous version to reproduce and when fixed.
+
+2000-04-13 Warren Levy <warrenl@cygnus.com>
+
+ * gnu/gcj/io/ClassLoaderObjectInputStream.java: New file.
+ * gnu/gcj/io/NullOutputStream.java: New file.
+ * gnu/gcj/lang/reflect/TypeSignature.java: New file.
+ * java/io/BlockDataException.java: New file.
+ * java/io/Externalizable.java: New file.
+ * java/io/InvalidClassException.java: New file.
+ * java/io/InvalidObjectException.java: New file.
+ * java/io/NotActiveException.java: New file.
+ * java/io/NotSerializableException.java: New file.
+ * java/io/ObjectInput.java: New file.
+ * java/io/ObjectInputStream.java: New file.
+ * java/io/ObjectInputValidation.java: New file.
+ * java/io/ObjectOutput.java: New file.
+ * java/io/ObjectOutputStream.java: New file.
+ * java/io/ObjectStreamClass.java: New file.
+ * java/io/ObjectStreamConstants.java: New file.
+ * java/io/ObjectStreamField.java: New file.
+ * java/io/Replaceable.java: New file.
+ * java/io/Resolvable.java: New file.
+ * java/io/SerializablePermission.java: New file.
+ * java/io/WriteAbortedException.java: New file.
+ * java/security/BasicPermission.java: New file.
+ * java/security/DigestOutputStream.java: New file.
+ * java/security/Guard.java: New file.
+ * java/security/Permission.java: New file.
+ * java/security/PermissionCollection.java: New file.
+ * Makefile.am: Added above files.
+ * Makefile.in: Rebuilt.
+
+ * java/beans/Beans.java (instantiate): Activated serialization code.
+ * java/lang/SecurityManager.java (checkPermission): New method.
+
+2000-04-12 Warren Levy <warrenl@cygnus.com>
+
+ * gnu/gcj/beans/BeanInfoEmbryo.java: New file.
+ * gnu/gcj/beans/EmptyBeanInfo.java: New file.
+ * gnu/gcj/beans/ExplicitBeanInfo.java: New file.
+ * gnu/gcj/beans/IntrospectionIncubator.java: New file.
+ * gnu/gcj/beans/editors/ColorEditor.java: New file.
+ * gnu/gcj/beans/editors/FontEditor.java: New file.
+ * gnu/gcj/beans/editors/NativeBooleanEditor.java: New file.
+ * gnu/gcj/beans/editors/NativeByteEditor.java: New file.
+ * gnu/gcj/beans/editors/NativeDoubleEditor.java: New file.
+ * gnu/gcj/beans/editors/NativeFloatEditor.java: New file.
+ * gnu/gcj/beans/editors/NativeIntEditor.java: New file.
+ * gnu/gcj/beans/editors/NativeLongEditor.java: New file.
+ * gnu/gcj/beans/editors/NativeShortEditor.java: New file.
+ * gnu/gcj/beans/editors/StringEditor.java: New file.
+ * gnu/gcj/beans/info/ComponentBeanInfo.java: New file.
+ * gnu/gcj/io/ObjectIdentityWrapper.java: New file.
+ * gnu/gcj/lang/ArrayHelper.java: New file.
+ * gnu/gcj/lang/ClassHelper.java: New file.
+ * java/beans/BeanDescriptor.java: New file.
+ * java/beans/BeanInfo.java: New file.
+ * java/beans/Beans.java: New file.
+ * java/beans/Customizer.java: New file.
+ * java/beans/DesignMode.java: New file.
+ * java/beans/EventSetDescriptor.java: New file.
+ * java/beans/FeatureDescriptor.java: New file.
+ * java/beans/IndexedPropertyDescriptor.java: New file.
+ * java/beans/IntrospectionException.java: New file.
+ * java/beans/Introspector.java: New file.
+ * java/beans/MethodDescriptor.java: New file.
+ * java/beans/ParameterDescriptor.java: New file.
+ * java/beans/PropertyChangeEvent.java: New file.
+ * java/beans/PropertyChangeListener.java: New file.
+ * java/beans/PropertyChangeSupport.java: New file.
+ * java/beans/PropertyDescriptor.java: New file.
+ * java/beans/PropertyEditor.java: New file.
+ * java/beans/PropertyEditorManager.java: New file.
+ * java/beans/PropertyEditorSupport.java: New file.
+ * java/beans/PropertyVetoException.java: New file.
+ * java/beans/SimpleBeanInfo.java: New file.
+ * java/beans/VetoableChangeListener.java: New file.
+ * java/beans/VetoableChangeSupport.java: New file.
+ * java/beans/Visibility.java: New file.
+ * java/beans/beancontext/BeanContext.java: New file.
+ * java/beans/beancontext/BeanContextChild.java: New file.
+ * java/beans/beancontext/BeanContextChildComponentProxy.java: New file.
+ * java/beans/beancontext/BeanContextChildSupport.java: New file.
+ * java/beans/beancontext/BeanContextContainerProxy.java: New file.
+ * java/beans/beancontext/BeanContextEvent.java: New file.
+ * java/beans/beancontext/BeanContextMembershipEvent.java: New file.
+ * java/beans/beancontext/BeanContextMembershipListener.java: New file.
+ * java/beans/beancontext/BeanContextProxy.java: New file.
+ * java/beans/beancontext/BeanContextServiceAvailableEvent.java:
+ New file.
+ * java/beans/beancontext/BeanContextServiceProvider.java: New file.
+ * java/beans/beancontext/BeanContextServiceProviderBeanInfo.java:
+ New file.
+ * java/beans/beancontext/BeanContextServiceRevokedEvent.java: New file.
+ * java/beans/beancontext/BeanContextServiceRevokedListener.java:
+ New file.
+ * java/beans/beancontext/BeanContextServices.java: New file.
+ * java/beans/beancontext/BeanContextServicesListener.java: New file.
+ * java/util/AbstractCollection.java: New file.
+ * java/util/AbstractList.java: New file.
+ * java/util/Arrays.java: New file.
+ * Makefile.am: Added above files.
+ * Makefile.in: Rebuilt.
+
+2000-04-11 Warren Levy <warrenl@cygnus.com>
+
+ * java/awt/AWTError.java: New file.
+ * java/awt/AWTEvent.java: New file.
+ * java/awt/AWTException.java: New file.
+ * java/awt/ActiveEvent.java: New file.
+ * java/awt/Adjustable.java: New file.
+ * java/awt/BorderLayout.java: New file.
+ * java/awt/Color.java: New file.
+ * java/awt/Component.java: New file.
+ * java/awt/Container.java: New file.
+ * java/awt/Dimension.java: New file.
+ * java/awt/Event.java: New file.
+ * java/awt/Font.java: New file.
+ * java/awt/Frame.java: New file.
+ * java/awt/Graphics.java: New file.
+ * java/awt/IllegalComponentStateException.java: New file.
+ * java/awt/Image.java: New file.
+ * java/awt/ItemSelectable.java: New file.
+ * java/awt/LayoutManager.java: New file.
+ * java/awt/LayoutManager2.java: New file.
+ * java/awt/Menu.java: New file.
+ * java/awt/MenuBar.java: New file.
+ * java/awt/MenuComponent.java: New file.
+ * java/awt/MenuContainer.java: New file.
+ * java/awt/MenuItem.java: New file.
+ * java/awt/Paint.java: New file.
+ * java/awt/PaintContext.java: New file.
+ * java/awt/Point.java: New file.
+ * java/awt/Rectangle.java: New file.
+ * java/awt/Shape.java: New file.
+ * java/awt/TextArea.java: New file.
+ * java/awt/TextComponent.java: New file.
+ * java/awt/Toolkit.java: New file.
+ * java/awt/Transparency.java: New file.
+ * java/awt/Window.java: New file.
+ * java/awt/natToolkit.cc: New file.
+ * java/awt/event/AWTEventListener.java: New file.
+ * java/awt/event/ActionEvent.java: New file.
+ * java/awt/event/ActionListener.java: New file.
+ * java/awt/event/AdjustmentEvent.java: New file.
+ * java/awt/event/AdjustmentListener.java: New file.
+ * java/awt/event/ComponentAdapter.java: New file.
+ * java/awt/event/ComponentEvent.java: New file.
+ * java/awt/event/ComponentListener.java: New file.
+ * java/awt/event/ContainerAdapter.java: New file.
+ * java/awt/event/ContainerEvent.java: New file.
+ * java/awt/event/ContainerListener.java: New file.
+ * java/awt/event/FocusAdapter.java: New file.
+ * java/awt/event/FocusEvent.java: New file.
+ * java/awt/event/FocusListener.java: New file.
+ * java/awt/event/InputEvent.java: New file.
+ * java/awt/event/InputMethodEvent.java: New file.
+ * java/awt/event/InputMethodListener.java: New file.
+ * java/awt/event/InvocationEvent.java: New file.
+ * java/awt/event/ItemEvent.java: New file.
+ * java/awt/event/ItemListener.java: New file.
+ * java/awt/event/KeyAdapter.java: New file.
+ * java/awt/event/KeyEvent.java: New file.
+ * java/awt/event/KeyListener.java: New file.
+ * java/awt/event/MouseAdapter.java: New file.
+ * java/awt/event/MouseEvent.java: New file.
+ * java/awt/event/MouseListener.java: New file.
+ * java/awt/event/MouseMotionAdapter.java: New file.
+ * java/awt/event/MouseMotionListener.java: New file.
+ * java/awt/event/PaintEvent.java: New file.
+ * java/awt/event/TextEvent.java: New file.
+ * java/awt/event/TextListener.java: New file.
+ * java/awt/event/WindowAdapter.java: New file.
+ * java/awt/event/WindowEvent.java: New file.
+ * java/awt/event/WindowListener.java: New file.
+ * java/awt/geom/Dimension2D.java: New file.
+ * java/awt/geom/Point2D.java: New file.
+ * java/awt/peer/ComponentPeer.java: New file.
+ * java/awt/peer/ContainerPeer.java: New file.
+ * java/awt/peer/FramePeer.java: New file.
+ * java/awt/peer/WindowPeer.java: New file.
+ * java/util/Collection.java: New file.
+ * java/util/Comparator.java: New file.
+ * java/util/Iterator.java: New file.
+ * java/util/List.java: New file.
+ * java/util/ListIterator.java: New file.
+ * Makefile.am: Added above files.
+ * Makefile.in: Rebuilt.
+
+2000-04-10 Warren Levy <warrenl@cygnus.com>
+
+ * gnu/gcj/runtime/MethodInvocation.java: Fixed copyright.
+ * java/lang/FirstThread.java: Ditto.
+ * java/lang/StringBuffer.java: Ditto.
+ * mauve-libgcj: Turned on java.math, java.sql and java.security tests.
+
+ * gnu/gcj/math/MPN.java (rshift): Undid Boehm's patch of 03-14.
+ Special case handled in java.math.BigInteger.
+ * java/math/BigInteger.java (divide): Handle the special case when
+ dividing by 1 and the high bit of the dividend is set.
+ (setShiftRight): Handle case when count == 0.
+
+2000-04-05 Andrew Haley <aph@cygnus.com>
+
+ * java/net/URL.java (setURLStreamHandler): Make "file" protocol a
+ special case.
+
+2000-04-05 Andrew Haley <aph@cygnus.com>
+
+ * sysdep/ia64.c (rse_address_add): Delete.
+ (IS_NaT_COLLECTION_ADDR): Delete.
+ (ia64_backtrace_helper): check for null unwind_info.
+
+ * sysdep/ia64-frame.h: add calc_caller_bsp.
+
+ * java/lang/natThrowable.cc (printRawStackTrace): Flush
+ PrintWriter.
+
+ * prims.cc (_Jv_divI): Use _Jv_ThrowSignal.
+ (_Jv_remI): Likewise.
+ (_Jv_divJ): Likewise.
+ (_Jv_remJ): Likewise.
+
+ * interpret.cc (continue1): Use divide subroutines to guarantee
+ correct Java standard behaviour.
+ Floating-point division should not abort; make it so.
+
+2000-03-29 Tom Tromey <tromey@cygnus.com>
+
+ * configure: Rebuilt.
+ * configure.in: Test against `libgcj_sjlj', not
+ `enable_sjlj_exceptions'. Rearranged code to allow SYSDEP_SOURCES
+ to be set even when using sjlj.
+
+2000-03-24 Andrew Haley <aph@cygnus.com>
+
+ * Makefile.am: Add file addr2name.awk.
+ * Makefile.in: Rebuilt.
+ * addr2name.awk: New file.
+ * name-finder.cc (_Jv_name_finder): Call addr2name.awk to do name
+ lookups on ia64.
+ * java/lang/natThrowable.cc(printRawStackTrace): Don't print out a
+ blank line.
+
+2000-03-22 Andrew Haley <aph@cygnus.com>
+
+ * configure.host: Add -funwind-tables for IA64.
+ * Makefile.am (c_source_files): Add SYSDEP_SORCES.
+ * Makefile.in: Rebuilt.
+ * java/lang/natThrowable.cc (fillInStackTrace): Add ia64 case.
+ * sysdep/ia64.c: New file.
+ * sysdep/ia64-frame.h: New file.
+ * configure.in: Add sysdep/ia64.c for ia64.
+ * configure: Rebuilt.
+
+2000-03-17 Andrew Haley <aph@cygnus.com>
+
+ * java/lang/natString.cc: Remove `register' keyword.
+ interpret.cc: ditto.
+
+2000-03-16 Andrew Haley <aph@cygnus.com>
+
+ * configure.host (ia64): Enable interpreter.
+
+2000-03-14 Hans Boehm <boehm@acm.org>
+
+ * gnu/gcj/math/MPN.java (rshift): Handle shift 32 specially.
+
+2000-03-14 Andrew Haley <aph@cygnus.com>
+
+ * include/default-signal.h (MAKE_THROW_FRAME): Add arg
+ `_exception'.
+
+2000-03-10 Andrew Haley <aph@cygnus.com>
+
+ * java/lang/ieeefp.h: Import latest version from fdlibm.
+
+2000-03-14 Andrew Haley <aph@cygnus.com>
+
+ * prims.cc (_Jv_ThrowSignal): New function.
+ (catch_segv): Add arg `_exception' to MAKE_THROW_FRAME.
+ (catch_fpe): Ditto.
+ * include/sparc-signal.h (MAKE_THROW_FRAME): Ditto
+ * include/i386-signal.h (MAKE_THROW_FRAME): Ditto.
+ * include/ppc-signal.h: New file.
+
+2000-05-18 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * java/lang/Thread.java: Declare `data' as Object, not RawData.
+ * java/lang/natThread.java (initialize_native): Cast `data' to
+ jobject.
+ * gnu/gcj/RawData.java: Clarify documentation.
+
+ From Gregory R. Warnes <warnes@biostat.washington.edu>:
+ * gnu/gcj/protocol/jar/Connection.java (getJarFile): Test for null
+ `jarFile', not `jarFileURL'.
+
+2000-05-15 Andrew Haley <aph@cygnus.com>
+
+ * include/ppc-signal.h: New file.
+
+2000-05-11 Tom Tromey <tromey@cygnus.com>
+
+ * java/util/zip/ZipInputStream.java (getNextEntry): When reading
+ file headers, don't include `size' in the skip call.
+
+2000-05-10 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * java/lang/StringBuffer.java (delete): Call arrayCopy() correctly.
+ Avoid arrayCopy() call where possible. Update `count' _after_ calling
+ arrayCopy().
+ (replace): Reimplemented. Fix javadoc.
+ (reverse): Call ensureCapacity_unsynchronized().
+ (StringBuffer (String)): Use DEFAULT_CAPACITY.
+
+ (replace): Calculate length for arraycopy() correctly.
+
+2000-05-09 Tom Tromey <tromey@cygnus.com>
+
+ * java/lang/StringBuffer.java (toString): Don't mark buffer as
+ shared.
+ (insert(int,char[],int,int): New method.
+ (delete): New method from Classpath.
+ (deleteCharAt): Likewise.
+ (substring): Likewise.
+ (shared): No longer private.
+ Added JavaDoc comments from Classpath.
+ * java/lang/String.java (String(StringBuffer)): Ensure `buffer' is
+ shared.
+
+2000-05-07 Tom Tromey <tromey@cygnus.com>
+
+ * Makefile.in: Rebuilt.
+ * Makefile.am (LIBLINK): New macro.
+ (libgcj_la_LINK): Use it.
+ (libgcjawt_la_LINK): Likewise.
+
+2000-05-06 Tom Tromey <tromey@cygnus.com>
+
+ * Makefile.in: Rebuilt.
+ * Makefile.am (libgcj.zip): Don't pass -L to javac.
+
+2000-05-05 Tom Tromey <tromey@cygnus.com>
+
+ Fix for PR libgcj/220:
+ * Makefile.in: Rebuilt.
+ * Makefile.am (gij_LDFLAGS): Don't use libstdc++.
+ (jv_convert_LDFLAGS): Likewise.
+ (libgcj_la_LDFLAGS): Likewise.
+ (GCJLINK): New macro.
+ (jv_convert_LINK): Use it.
+ (gij_LINK): Likewise.
+ (libgcj_la_LINK): New macro.
+ (libgcjawt_la_LINK): Likewise.
+
+2000-05-04 Tom Tromey <tromey@cygnus.com>
+
+ * gcj/field.h (JvFieldIsRef): Return false for gnu.gcj.RawData
+ field.
+ * boehm.cc (_Jv_MarkObj): Removed dead code. Use `STATIC', not
+ `0x0008'.
+ Include Modifier.h.
+
+2000-05-05 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * java/lang/natClass.cc (isInstance): Use __builtin_expect.
+ (_Jv_IsAssignableFrom): Ditto.
+ (_Jv_IsInstanceOf): Ditto.
+ (_Jv_CheckCast): Ditto.
+ (_Jv_CheckArrayStore): Ditto.
+ * java/lang/Class.h (_Jv_InitClass): Ditto.
+ * java/lang/natObject.cc (_Jv_MonitorEnter): __builtin_expect `false',
+ not `0'.
+ (notify): Ditto.
+ (notifyAll): Ditto.
+ (wait): Ditto.
+ (_Jv_MonitorExit): Ditto.
+ * boehm.cc (_Jv_MarkObj): Ditto.
+ (_Jv_MarkObj): Ditto.
+ (_Jv_MarkArray): Ditto.
+ * prims.cc (_Jv_AllocObject): Ditto.
+ (_Jv_NewObjectArray): Ditto.
+ (_Jv_NewPrimArray): Ditto.
+ (_Jv_Malloc): Ditto.
+ (_Jv_Realloc): Ditto.
+ (_Jv_MallocUnchecked): Ditto.
+ (_Jv_divI): Ditto.
+ (_Jv_remI): Ditto.
+ (_Jv_divJ): Ditto.
+ (_Jv_remJ): Ditto.
+
+2000-05-04 Tom Tromey <tromey@cygnus.com>
+
+ * java/util/Locale.java (Locale): Don't explicitly check for
+ null.
+ * java/util/Hashtable.java (containsKey): Don't explicitly check
+ for null.
+ (get): Likewise.
+ * java/util/BitSet.java (and, or, xor): Don't explicitly check for
+ null.
+ * java/util/zip/ZipEntry.java (ZipEntry): Don't explicitly check
+ for null.
+ * java/text/StringCharacterIterator.java
+ (StringCharacterIterator): Don't check for null.
+ * java/text/ChoiceFormat.java (setChoices): Don't explicitly check
+ for null pointer.
+ * java/net/MulticastSocket.java (joinGroup): Don't explicitly
+ check for null pointer.
+ (leaveGroup): Likewise.
+ * java/net/DatagramPacket.java (DatagramPacket): Removed erroneous
+ comment.
+ (setData): Likewise.
+ * java/lang/ThreadGroup.java (ThreadGroup): Don't explicitly check
+ for `p==null'.
+
+2000-04-28 Jakub Jelinek <jakub@redhat.com>
+
+ * Makefile.am (GCJCOMPILE, JCFLAGS, JF1CLAGS, jv_convert_LINK,
+ gij_LINK, libgcj.zip, .java=.class): Move -L option out of FLAGS.
+ (libgcj_la_LDFLAGS): Add -L../libstdc++ for in-gcc builds.
+ (jv_convert_LDFLAGS, gij_LDFLAGS): Add `pwd`/../libstdc++ to
+ -rpath for in-gcc builds.
+ * Makefile.in: Rebuilt.
+
+2000-04-28 Tom Tromey <tromey@cygnus.com>
+
+ * libgcj.spec.in (*jc1): Added -fasynchronous-exceptions.
+ Fix for PR gcj/218.
+
+2000-04-28 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * libjava/java/lang/String.java (toString): Remove `final' hack.
+
+2000-04-05 Tom Tromey <tromey@cygnus.com>
+
+ Runtime support for PR gcj/2:
+ * prims.cc (_Jv_ThrowNullPointerException): New function.
+ * include/jvm.h (_Jv_ThrowNullPointerException): Declare.
+
+2000-04-27 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * prims.cc (_Jv_NewObjectArray): Fix typo.
+
+2000-04-26 Tom Tromey <tromey@cygnus.com>
+
+ * Makefile.in: Rebuilt.
+ * Makefile.am (AM_CXXFLAGS): Added -fasynchronous-exceptions.
+
+2000-04-24 Jeff Sturm <jsturm@sigma6.com>
+
+ * gnu/gcj/runtime/natFirstThread.cc (run): Initialize class before
+ calling main.
+
+2000-04-22 Anthony Green <green@cygnus.com>
+
+ * include/jvm.h (__builtin_expect): Define as unused for now.
+ * java/lang/natObject.cc (_Jv_MonitorEnter): Add __builtin_expect.
+ (notify): Ditto.
+ (notifyAll): Ditto.
+ (wait): Ditto.
+ (_Jv_MonitorExit): Ditto.
+ * boehm.cc (_Jv_MarkObj): Ditto.
+ (_Jv_MarkObj): Ditto.
+ (_Jv_MarkArray): Ditto.
+ (_Jv_AllocBytes): Ditto.
+ * prims.cc (_Jv_AllocObject): Ditto.
+ (_Jv_NewObjectArray): Ditto.
+ (_Jv_NewPrimArray): Ditto.
+ (_Jv_Malloc): Ditto.
+ (_Jv_Realloc): Ditto.
+ (_Jv_MallocUnchecked): Ditto.
+ (_Jv_divI): Ditto.
+ (_Jv_remI): Ditto.
+ (_Jv_divJ): Ditto.
+ (_Jv_remJ): Ditto.
+
+ * include/Makefile.in: Rebuilt.
+ * include/Makefile.am (include_HEADERS): Add jvmpi.h.
+
+2000-04-21 Tom Tromey <tromey@cygnus.com>
+
+ * java/io/PipedInputStream.java, java/io/PipedOutputStream.java:
+ Yet another new version from Classpath.
+
+ Fix for PR libgcj/15:
+ * java/util/natGregorianCalendar.cc (_REENTRANT,
+ _POSIX_PTHREAD_SEMANTICS): Don't define.
+ * java/net/natInetAddress.cc (_REENTRANT): Don't define.
+ * java/lang/natSystem.cc (_REENTRANT, _POSIX_PTHREAD_SEMANTICS):
+ Don't define.
+ * java/io/natFile.cc (_REENTRANT, _POSIX_PTHREAD_SEMANTICS): Don't
+ define.
+ * configure: Rebuilt.
+ * configure.in: If using POSIX threads, define _REENTRANT if
+ needed. Define _POSIX_PTHREAD_SEMANTICS. Don't define
+ GETHOSTBYNAME_R_NEEDS_REENTRANT.
+
+ * java/io/PipedInputStream.java, java/io/PipedReader.java,
+ java/io/PipedOutputStream.java, java/io/PipedWriter.java: New
+ version from Classpath.
+
+ Fix for PR libgcj/213:
+ * Makefile.in: Rebuilt.
+ * Makefile.am (gij_SOURCES): Added gij.cc.
+ (EXTRA_gij_SOURCES): Removed.
+ (gij_LDADD): Removed gij.lo.
+ (gij_DEPENDENCIES): Likewise.
+ ($(gij_OBJECTS)): Depend on nat_headers.
+
+ * gnu/gcj/protocol/file/Handler.java (openConnection): Use
+ `setURL', not `url.set'.
+
+2000-04-20 Tom Tromey <tromey@cygnus.com>
+
+ Fix for PR java.io/204:
+ * java/io/PipedInputStream.java, java/io/PipedReader.java,
+ java/io/PipedOutputStream.java, java/io/PipedWriter.java: Imported
+ from Classpath.
+
+ Fix for PR libgcj/212:
+ * gcj/javaprims.h (_Jv_word, _Jv_word2): Removed definitions.
+ * include/jvm.h (_Jv_word, _Jv_word2): Define.
+ * java/lang/Class.h (_Jv_word): Declare.
+
+ * jni.cc (_Jv_JNI_PopSystemFrame): Clear `env->ex'.
+
+2000-04-19 Tom Tromey <tromey@cygnus.com>
+
+ * jni.cc (_Jv_JNI_FindClass): Use system class loader if class
+ doesn't have a loader.
+
+2000-04-19 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * boehm.cc: (_Jv_MarkObj, _Jv_MarkArray): Cast pointers for
+ MAYBE_MARK to ptr_t, for compatibility with new GC version.
+
+2000-04-16 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * java/io/natFileDescriptorPosix.cc (open): Use mode 0666. Fix for PR
+ libgcj/202.
+ (available): Initialize `where' to prevent bogus compiler warning.
+
+2000-04-12 Tom Tromey <tromey@cygnus.com>
+
+ * java/lang/natString.cc (intern): Temporarily disable finalizer
+ registration.
+
+ * java/lang/natString.cc (unintern): Added `obj' argument.
+ (intern): Register finalizer for string.
+ * java/lang/String.java (unintern): Now static; added obj
+ argument.
+
+2000-04-11 Tom Tromey <tromey@cygnus.com>
+
+ * java/util/Vector.java (VectorEnumeration): Now `final'.
+ * java/util/Hashtable.java (HashtableEntry): Now `final'.
+ (HashtableEnumeration): Likewise.
+ * java/util/zip/ZipFile.java (ZipEnumeration): Now `final'.
+ * java/text/RuleBasedCollator.java (RBCElement): Now `final'.
+
+2000-04-10 Warren Levy <warrenl@cygnus.com>
+
+ * java/io/ObjectStreamException.java: New file.
+ * java/io/OptionalDataException.java: New file.
+ * java/io/StreamCorruptedException.java: New file.
+ * java/math/BigDecimal.java: New file.
+ * java/sql/CallableStatement.java: New file.
+ * java/sql/Connection.java: New file.
+ * java/sql/DataTruncation.java: New file.
+ * java/sql/DatabaseMetaData.java: New file.
+ * java/sql/Date.java: New file.
+ * java/sql/Driver.java: New file.
+ * java/sql/DriverManager.java: New file.
+ * java/sql/DriverPropertyInfo.java: New file.
+ * java/sql/PreparedStatement.java: New file.
+ * java/sql/ResultSet.java: New file.
+ * java/sql/ResultSetMetaData.java: New file.
+ * java/sql/SQLException.java: New file.
+ * java/sql/SQLWarning.java: New file.
+ * java/sql/Statement.java: New file.
+ * java/sql/Time.java: New file.
+ * java/sql/Timestamp.java: New file.
+ * java/sql/Types.java: New file.
+ * Makefile.am: Added above new files.
+ * Makefile.in: Rebuilt.
+
+ * mauve-libgcj: Turned on java.math, java.sql and java.security tests.
+ * java/net/MulticastSocket.java (MulticastSocket): Pass values a la
+ DatagramSocket constructor instead of null.
+
+2000-04-08 Anthony Green <green@cygnus.com>
+
+ * include/posix-threads.h (_Jv_MutexUnlock): Replace
+ _JV_NOT_OWNER.
+
+2000-04-08 Anthony Green <green@cygnus.com>
+
+ * posix-threads.cc (_Jv_MutexLock): Moved back to posix-threads.h.
+ (_Jv_MutexUnlock): Ditto.
+ * include/posix-threads.h (_Jv_MutexLock): From posix-threads.cc.
+ (_Jv_MutexUnlock): Ditto.
+
+2000-04-08 Anthony Green <green@cygnus.com>
+
+ * java/lang/StringBuffer.java (ensureCapacity): Don't call Math::max.
+ (ensureCapacity_unsynchronized): New private method.
+ (append): Use ensureCapacity_unsynchronized.
+
+2000-04-08 Tom Tromey <tromey@cygnus.com>
+
+ * Makefile.in: Rebuilt.
+ * Makefile.am (awt_java_source_files): Added new files.
+ * java/awt/IllegalComponentStateException.java: New file.
+ * java/awt/ItemSelectable.java: New file.
+ * java/awt/event/WindowEvent.java: Finished.
+ * java/awt/event/TextEvent.java: Finished.
+ * java/awt/event/ContainerEvent.java: New file.
+ * java/awt/Component.java (getX, getY): New methods.
+ * java/awt/event/PaintEvent.java: New file.
+ * java/awt/event/MouseEvent.java: New file.
+ * java/awt/ActiveEvent.java: New file.
+ * java/awt/event/KeyEvent.java: Finished.
+ * java/awt/event/ItemEvent.java: New file.
+ * java/awt/Adjustable.java: New file.
+ * java/awt/event/InputMethodEvent.java: New file.
+ * java/awt/event/InputEvent.java: Finished.
+ * java/awt/event/FocusEvent.java: New file.
+ * java/awt/event/MouseMotionAdapter.java: New file.
+ * java/awt/event/MouseAdapter.java: New file.
+ * java/awt/event/KeyAdapter.java: New file.
+ * java/awt/event/FocusAdapter.java: New file.
+ * java/awt/event/ContainerAdapter.java: New file.
+ * java/awt/event/ComponentEvent.java: Finished.
+ * java/awt/event/AdjustmentEvent.java: New file.
+ * java/awt/event/ComponentAdapter.java: New file.
+ * java/awt/event/ActionEvent.java: Finished.
+ * java/awt/event/MouseMotionListener.java: New file.
+ * java/awt/event/MouseListener.java: New file.
+ * java/awt/event/ItemListener.java: New file.
+ * java/awt/event/InputMethodListener.java: New file.
+ * java/awt/event/ContainerListener.java: New file.
+ * java/awt/event/FocusListener.java: New file.
+ * java/awt/event/ComponentListener.java: New file.
+ * java/awt/event/AWTEventListener.java: New file.
+ * java/awt/event/AdjustmentListener.java: New file.
+
+2000-04-08 Anthony Green <green@cygnus.com>
+
+ * java/lang/natObject.cc (_Jv_MonitorEnter): Only perform null
+ check when we have to.
+
+ * gcj/array.h: Mark elements(JArray<T>& x) and elements(JArray<T>*
+ x) as `inline'.
+
+ * java/util/StringTokenizer.java: Minor optimization. Eliminates
+ one method call.
+
+ * java/util/Vector.java (VectorEnumeration.nextElement): Manually
+ inline hasMoreElements.
+
+2000-04-05 Tom Tromey <tromey@cygnus.com>
+
+ * configure: Rebuilt.
+ * configure.in: Recognize --enable-java-awt.
+ (AWT): New conditional.
+ * Makefile.in: Rebuilt.
+ * Makefile.am (toolexeclib_LTLIBRARIES): Build libgcjawt.la if
+ requested.
+ (libgcjawt_la_SOURCES): New macro.
+ (EXTRA_libgcjawt_la_SOURCES): Likewise.
+ (libgcjawt_la_DEPENDENCIES): Likewise.
+ (libgcjawt_la_LIBADD): Likewise.
+ (libgcjawt_la_LDFLAGS): Likewise.
+ (libgcj.zip): Depend on cond_java_awt_source_files
+ (cond_awt_java_source_files): New macro.
+ (MOSTLYCLEANFILES): Added awto_files.
+ (awto_files): New macro. Use where javao_files used.
+ (nat_headers): Use cond_awt_java_source_files.
+
+2000-04-04 Tom Tromey <tromey@cygnus.com>
+
+ * Makefile.in: Rebuilt.
+ * Makefile.am (awt_java_source_files): Added AWTException.java.
+ * java/awt/AWTException.java: New file.
+
+2000-04-03 Tom Tromey <tromey@cygnus.com>
+
+ * include/jvm.h (_Jv_GetArrayElementFromElementType): More
+ commentary from Alex.
+
+ * Makefile.in: Rebuilt.
+ * Makefile.am ($(javao_files)): Depend on libgcj.zip.
+ From H.J. Lu.
+
+Sun Apr 2 08:27:18 2000 Anthony Green <green@redhat.com>
+
+ * configure: Rebuilt.
+ * configure.in: Add --disable-jvmpi.
+ * include/config.h.in: Rebuilt.
+ * acconfig.h: Add ENABLE_JVMPI.
+
+ * include/jvm.h: Declare _Jv_DisableGC and _Jv_EnableGC.
+ (_Jv_JVMPI_Notify_OBJECT_ALLOC): New define.
+ (_Jv_JVMPI_Notify_THREAD_END): New define.
+ (_Jv_JVMPI_Notify_THREAD_END): New define.
+ * prims.cc (_Jv_JVMPI_Notify_OBJECT_ALLOC): Declare.
+ (_Jv_JVMPI_Notify_THREAD_END): Declare.
+ (_Jv_JVMPI_Notify_THREAD_END): Declare.
+
+ * prims.cc (_Jv_AllocObject): Generate JVMPI object allocation
+ events.
+
+ * java/lang/natThread.cc: Include JVMPI headers if necessary.
+ (finish_): Generate JVMPI thread end events.
+ (run_): Generate JVMPI thread start events.
+ * gnu/gcj/runtime/natFirstThread.cc (run): Call JNI_OnLoad for any
+ preloaded JNI library.
+ Include JVMPI headers if necessary.
+ (run): Generate JVMPI thread start events.
+
+ * boehm.cc: Define GC_disable and GC_enable.
+ (_Jv_DisableGC): New function.
+ (_Jv_EnableGC): New function.
+ (disable_gc_mutex): Declare.
+ * nogc.cc (_Jv_DisableGC): New function.
+ (_Jv_EnableGC): New function.
+
+ * jni.cc (_Jv_JNI_GetEnv): Handle JVMPI interface requests.
+ (_Jv_JVMPI_Interface): Define.
+ (jvmpiEnableEvent): New function.
+ (_Jv_JNI_Init): Initialize _Jv_JVMPI_Interface.
+
+ * include/jvmpi.h: New file.
+
+2000-03-27 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * Makefile.in: New #defines and friends for Thread.h.
+ * Makefile.am: Ditto.
+ * posix-threads.cc: (struct starter): Remove `object'.
+ (_Jv_CondWait): Use interruptable condition variables and new
+ recursive mutexes. New return codes on interrupt or non-ownership
+ of mutex.
+ (_Jv_CondNotify): Ditto.
+ (_Jv_CondNotifyAll): Ditto.
+ (_Jv_ThreadInterrupt): Set thread interrupt flag directly. Interrupt
+ the target thread by signaling its wait condition.
+ (_Jv_ThreadInitData): Set `thread_obj' in the thread data struct,
+ not the starter struct. Initialize wait_mutex and wait_cond.
+ (_Jv_MutexLock): New recursive mutex implementation. Moved from
+ posix-threads.h.
+ (_Jv_MutexUnlock): Ditto.
+ (really_start): Set info->data->thread from pthread_self() to work
+ around a race condition. Destroy wait_mutex and wait_cond when run()
+ returns.
+ * java/lang/Thread.java: (isInterrupted_): Renamed to overloaded
+ `isInterrupted(boolean)'. Clear interrupted flag if clear_flag is
+ set.
+ startable_flag: New private field.
+ (Thread): Initialize `startable_flag'.
+ (toString): Check for null thread group.
+ * java/lang/natThread.cc: (struct natThread): New fields
+ `join_mutex', `join_cond'. Removed fields `joiner', `next'.
+ (class locker): Removed.
+ (initialize_native): Initialize `join_cond' and `join_mutex'.
+ (interrupt): Now just calls _Jv_ThreadInterrupt().
+ (join): Simplified. Just wait on the target thread's join condition.
+ (finish_): Remove join list code. Unset thread group. Signal
+ potential joiners by notifying the dying threads join_cond.
+ (start): Check for illegal restarts.
+ * java/lang/natObject.cc: Check for return value of _Jv_CondWait and
+ act appropriatly.
+ * include/posix-threads.h: Remove all HAVE_RECURSIVE_MUTEX related
+ #defines and #ifdefs.
+ (struct _Jv_Thread_t): New fields `thread_obj', `wait_cond',
+ `wait_mutex', `next'.
+ (struct _Jv_ConditionVariable_t): Define as a struct instead of
+ directly mapping to pthread_cond_t.
+ (struct _Jv_Mutex_t): New recursive implementation.
+ (_Jv_PthreadCheckMonitor): Reimplemented. Simple `owner' check.
+ _Jv_HaveCondDestroy: Never define this for posix-threads.
+ (_Jv_CondNotify): Remove inline implementation(s), prototype instead.
+ (_Jv_CondNotifyAll): Ditto.
+ (_Jv_MutexLock): Ditto.
+ (_Jv_MutexUnlock): Ditto.
+ (_Jv_MutexInit): Changed to reflect new mutex implementation.
+ (_Jv_MutexDestroy): Ditto.
+ (_Jv_CondDestroy): Removed.
+ (_Jv_PthreadGetMutex): Removed.
+ * include/win32-threads.h: (_Jv_CondNotify): Guess _JV_NOT_OWNER on an
+ error. Add a FIXME about this.
+ (_Jv_CondNotifyAll): Ditto.
+ * win32-threads.cc: (_Jv_CondWait): Return 0 on a timeout. Guess
+ _JV_NOT_OWNER on other errors. Add FIXME.
+
+2000-03-26 Tom Tromey <tromey@cygnus.com>
+
+ * jni.cc (_Jv_JNI_PopSystemFrame): If environment has exception
+ set, throw it.
+ (call): Don't throw exception here.
+
+2000-03-26 Tom Tromey <tromey@cygnus.com>
+
+ * java/lang/mprec.h: Use SIZEOF_VOID_P.
+ * interpret.cc: Use SIZEOF_VOID_P.
+ * include/java-cpool.h (_Jv_storeLong): Use SIZEOF_VOID_P.
+ (_Jv_loadLong): Likewise.
+ (_Jv_storeDouble): Likewise.
+ * configure: Rebuilt.
+ * configure.in: Check size of void*.
+
+ * resolve.cc (ncode): Use FFI_PREP_RAW_CLOSURE and FFI_RAW_SIZE.
+
+2000-03-26 Hans Boehm <boehm@acm.org>
+
+ * include/java-cpool.h (_Jv_storeLong, _Jv_loadLong,
+ _Jv_storeDouble, _Jv_loadDouble): Define differently on 64 bit
+ machine.
+ * java/lang/ieeefp.h: Define __IEEE_BIG_ENDIAN or
+ __IEEE_LITTLE_ENDIAN appropriately on IA64.
+ * java/lang/mprec.h: Don't define Pack_32 on 64 bit machine.
+ * javaprims.h (_Jv_word): Added `l' and `d' entries in 64 bit
+ case.
+ * resolve.cc (FFI_PREP_RAW_CLOSURE): New define.
+ (FFI_RAW_SIZE): Likewise.
+ (_Jv_InterpMethod::ncode): Use them.
+ * interpret.cc (PUSHL, PUSHD, POPL, POPD, LOADL, LOADD, STOREL,
+ STORED): Define differently on a 64 bit machine.
+ (continue1): Use ffi_java_raw_call when appropriate.
+
+2000-03-24 Warren Levy <warrenl@cygnus.com>
+
+ * java/math/BigInteger.java(divide): Handle the special case when
+ dividing by 1 and the high bit of the dividend is set.
+ (setShiftRight): Handle case when count == 0.
+
+2000-03-24 Warren Levy <warrenl@cygnus.com>
+
+ * java/awt/Font.java(isBold): Fix syntax error.
+ (isItalic): ditto.
+ * java/awt/Frame.java(postEvent): ditto.
+ * java/awt/Menu.java(postEvent): ditto.
+ * java/awt/MenuBar.java(postEvent): ditto.
+ * java/awt/Toolkit.java(init): Included a stub.
+
+2000-03-21 Bryce McKinlay <bryce@albatross.co.nz>
+
+ * java/awt/Event.java: Add all the event type constants.
+ (Event): Implemented constructors.
+ (controlDown): Implemented.
+ (metaDown): Implemented.
+ (paramString): Stubbed.
+ (shiftDown): Implemented.
+ (toString): Implemented.
+ (translate): Implemented.
+
2000-03-21 Bryce McKinlay <bryce@albatross.co.nz>
* java/lang/natClass.cc (isInstance): Initialize `this'.
(isAssignableFrom): Initialize `this' and `klass'.
(_Jv_IsAssignableFrom): If an interface has no idt, it is not
implemented by any loaded class, so return false.
+ * java/lang/natClass.cc (isInstance): Use _Jv_IsAssignableFrom(),
+ not Class.isAssignableFrom(). Use JV_CLASS, not getClass().
2000-03-19 Warren Levy <warrenl@cygnus.com>