* gnu/gcj/jni/natNativeThread.cc: New file.
* gnu/gcj/jni/NativeThread.java: New file.
* java/lang/Thread.java (data): Now a RawData.
* include/jvm.h (_Jv_GetCurrentJNIEnv, _Jv_SetCurrentJNIEnv):
Declare.
* Makefile.in: Rebuilt.
* Makefile.am (java/lang/Thread.h): New target.
(ordinary_java_source_files): Added NativeThread.java.
(nat_source_files): Added natNativeThread.cc.
* java/lang/natThread.cc: Include <jni.h>
(struct natThread): Added `jni_env' field.
(_Jv_GetCurrentJNIEnv): New function.
(_Jv_SetCurrentJNIEnv): Likewise.
(initialize_native): Initialize jni_env.
Include RawData.h.
* jni.cc (ThreadGroupClass): New define.
(_Jv_JNI_InvokeFunctions): New structure.
(JNI_GetCreatedJavaVMs): New function.
(the_vm): New global.
(JNI_GetDefaultJavaVMInitArgs): New function.
Include NativeThread.h.
(NativeThreadClass): New define.
(_Jv_JNI_EnsureLocalCapacity): Return JNI_ERR, not -1.
(_Jv_JNI_DestroyJavaVM): New function.
(_Jv_JNI_AttachCurrentThread): New function.
(_Jv_JNI_DetachCurrentThread): New function.
(_Jv_JNI_GetEnv): New function.
(JNI_CreateJavaVM): New function.
(_Jv_JNI_GetJavaVM): New function.
(_Jv_JNIFunctions): Added entry for GetJavaVM.
* include/jni.h (JavaVMAttachArgs): New structure.
(JNI_EDETACHED): New define.
(JNI_EVERSION): Likewise.
(JavaVM): Define properly.
(struct JNIInvokeInterface): New structure.
(class _Jv_JavaVM): New class.
(JNI_OnLoad, JNI_OnUnload): Declare.
(JNI_GetDefaultJavaVMInitArgs, JNI_CreateJavaVM,
JNI_GetCreatedJavaVMs): Declare.
(JavaVMInitArgs): New typedef.
(JavaVMOption): Likewise.
(JNI_ERR): New define.
(JNI_OK): Likewise.
From-SVN: r31901
* gnu/gcj/convert/natIconv.cc (Input_iconv::finalize): Call
iconv_close when handle is not NULL. Thanks to Andrew Haley.
(Output_iconv::finalize): Likewise.
From-SVN: r31876
* configure: Rebuilt.
* configure.in: Build include/Makefile.
* Makefile.in: Rebuilt.
* Makefile.am (SUBDIRS): Added gcj and include.
(install-data-local): New target.
(extra_headers): New macro.
* include/Makefile.in: New file.
* include/Makefile.am: New file.
* interpret.cc: Don't include gcj/field.h or gcj/cni.h.
* java/lang/reflect/natField.cc: Don't include gcj/field.h or
gcj/cni.h.
* boehm.cc: Don't include java-threads.h or gcj/field.h.
* resolve.cc: Include config.h.
* defineclass.cc: Include config.h.
* include/java-interp.h: Don't include config.h.
* include/jvm.h: Include java-threads.h, Object.h, java-gc.h,
cni.h.
* gcj/javaprims.h: Regenerated namespace decls.
* classes.pl (scan): Don't put `;' after closing brace.
* Makefile.in: Rebuilt.
* Makefile.am (INCLUDES): Added -I for top_srcdir.
* configure.in: Create gcj/Makefile.
* gcj/Makefile.in: New file.
* gcj/Makefile.am: New file.
* java/lang/Object.h: Don't include any other headers.
* gcj/array.h: Renamed from include/java-array.h.
* gcj/field.h: Renamed from include/java-field.h.
* gcj/method.h: Renamed from include/java-method.h.
* gcj/cni.h, gcj/javaprims.h: Moved from include/.
Updated all files to reflect new include structure.
From-SVN: r29278
* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Renamed
from _Jv_InternClassStrings.
* prims.cc (_Jv_RunMain): New function.
(JvRunMain): Remove gij-support.
* gij.cc (main): Use _Jv_RunMain.
* java/util/zip/ZipFile.java: Call readDirectory in constructor.
* interpret.cc (PUSHA, PUSHI, PUSHF, PUSHL, PUSHD): Don't store
argument in temp variable.
(continue1): For all op_x2y insns, use temp variable for
intermediate value. Also remove some comments.
* java/lang/natClass.cc (newInstance): Call _Jv_InitClass.
(forName): Don't call _Jv_InitClass.
* java/lang/Class.java (getResource,getResourceAsStream): Implement.
* java/util/zip/ZipEntry.java (ZipEntry(ZipEntry)): New construcor.
* java/util/jar/JarInputStream.java: New file.
* java/util/jar/JarEntry.java: New file.
* java/util/jar/JarFile.java: New file.
* java/net/URLClassLoader.java: New file.
* java/net/JarURLConnection.java: New file.
* gnu/gcj/protocol/jar/Handler.java: New file.
* gnu/gcj/protocol/jar/Connection.java: New file.
* java/security/SecureClassLoader.java: New file.
* java/lang/ClassLoader.java (parent): New variable.
(ClassLoader (ClassLoader)): new constructor.
(findClass): New method.
(loadClass): Add default 1.2 implementation.
(getSystemResourceAsBytes, getResourceAsBytes): Removed.
(readfully): Removed.
* gnu/gcj/runtime/VMClassLoader.java: Moved from java/lang.
(findSystemClass): New method.
(VMClassLoader): Constructor rewritten.
(init): New method.
All other methods removed.
* java/lang/natClassLoader.cc: Change use of java::lang::VMClassLoader
to gnu::gcj::runtime::VMClassLoader.
(_Jv_InternClassStrings): Use _Jv_ResolvePoolEntry. Also handle
class entries.
(VMClassLoader::findSystemClass): renamed from findBootClass.
* Makefile.am: Add new files.
(FirstThread.h, ThreadGroup.h): Add _Jv_Main friend.
* Makefile.in: Rebuilt.
From-SVN: r28748
1999-07-01 Warren Levy <warrenl@cygnus.com>
* gnu/gcj/convert/BytesToUnicode.java (read): Changed outlength
to count and revised comments to match.
* gnu/gcj/convert/Input_EUCJIS.java (read): Same as Input_8859_1.java.
* gnu/gcj/convert/Input_JavaSrc.java (read): ditto.
* gnu/gcj/convert/Input_SJIS.java (read): ditto.
* gnu/gcj/convert/Input_UTF8.java (read): ditto.
* gnu/gcj/convert/natInput_EUCJIS.cc (read): ditto.
* gnu/gcj/convert/natInput_SJIS.cc (read): ditto.
1999-07-01 John-Marc Chandonia <jmc@cmpharm.ucsf.edu>
* gnu/gcj/convert/Input_8859_1.java (read): Use 3rd parameter
properly as count rather than outlength.
* java/io/BufferedOutputStream.java (write(byte[],int,int): Flush
output on overflow rather than buffer fill.
* java/io/BufferedReader.java (fill): Don't clear out the buffer
if markPos is 0 and there is still room in the buffer.
From-SVN: r27892
* java/text/DateFormat.java (computeInstance): Separate time
and date styles.
(getDateTimeInstance): Ditto.
(getDateTimeInstance(int,int)): New method.
* Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Add new classes.
* java/util/PropertyResourceBundle.java: New file.
* gnu/gcj/util/EnumerationChain.java: New file.
From-SVN: r26842
* java/lang/StringBuffer.java (ensureCapacity): Don't resize
vector when shared.
* java/util/Locale.java (Locale(String,String)): Implement in
terms of 3-argument version; variant now defaults to empty
string.
(toString): Assume variant is not null.
(equals): Assume all strings are not null.
(Locale): Throw NullPointerException if any argument is null.
* java/util/ResourceBundle.java (getBundle): Don't try the base
name; now implicit in partialGetBundle call.
(trySomeGetBundle): Search for parent bundles and call setParent
as required.
(partialGetBundle): Added `langStop' argument. Use
`Locale.toString' to compute bundleName.
(resource_cache): New static field.
(partialGetBundle): Cache the returned resource bundle. Now
synchronized.
* gnu/gcj/text/LocaleData_en.java (contents): [collatorRule] Added
missing `<'.
* mauve-libgcj: Enable Collator and RuleBasedCollator.
* java/text/natCollator.cc (decomposeCharacter): `base' now
`const'.
* Makefile.in: Rebuilt.
* Makefile.am (ordinary_java_source_files): Added
CollationElementIterator, CollationKey, Collator,
RuleBasedCollator.
(nat_source_files): Added natCollator.cc.
* java/text/RuleBasedCollator.java (ceiNext): No longer static.
(compare): Pass `this' to CollationElementIterator constructor.
(getCollationElementIterator): Likewise.
(ceiNext): Fix off-by-one error when finding initial substring.
(next): Correctly mask off bits when computing return value.
Fixed return values when one string is shorter than the other.
* java/text/CollationElementIterator.java (collator): New field.
(CollationElementIterator): Added collator argument.
(next): Call ceiNext on collator object.
From-SVN: r26707
* java/util/GregorianCalendar.java (setDefaultTime): New method.
(GregorianCalendar): Use it in all constructors.
* java/util/Calendar.java (Calendar): Changed argument name to
`zone' to match code.
* gnu/gcj/text/LocaleData_en.java: Added collatorRule element.
* java/text/CollationKey.java: New file.
* java/text/CollationElementIterator.java: New file.
* java/text/Collator.java: New file.
* java/text/RuleBasedCollator.java: New file.
From-SVN: r26654
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26503
�
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26502
�
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26501
h
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26500
8
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26499
`
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26498
�
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26497
�
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26496