summaryrefslogtreecommitdiffstats
path: root/libjava/java/lang/ClassLoader.java
Commit message (Collapse)AuthorAgeFilesLines
* * java/lang/ClassLoader.java (loadClass): Not deprecated.tromey2003-06-121-1/+0
| | | | | | | * java/io/PrintStream.java: Not deprecated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67811 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/ClassLoader.java (defineClass(byte[],int,int)):tromey2003-02-241-1/+3
| | | | | | | | | | Deprecate. * java/lang/Thread.java (resume): Deprecate. * java/io/ByteArrayOutputStream.java (toString(int)): Fixed typo in @deprecated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63364 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/ClassLoader.java (findLoadedClass): Removed erroneoustromey2003-01-241-3/+2
| | | | | | | comment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@61725 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/natClassLoader.cc (defineClass0): Removed erroneoustromey2002-12-191-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | comment. * java/lang/ClassLoader.java (defineClass): Use chained exception when rethrowing. * defineclass.cc (handleClassBegin): Mark class as interpreted. * java/lang/reflect/Modifier.java (INVISIBLE, INTERPRETED): New constants. * resolve.cc (_Jv_PrepareMissingMethods): New function. (_Jv_PrepareClass): Use it. * include/java-interp.h (_Jv_IsInterpretedClass): Rewrote. (_Jv_InterpClass): _Jv_PrepareMissingMethods now friend. * java/lang/Class.h (Class::getModifiers): Mask with ALL_FLAGS. (Class): _Jv_PrepareMissingMethods now friend. * java/lang/natClassLoader.cc (defineClass0): Use JvSynchronize. Record `NULL' for system class loader. (_Jv_RegisterInitiatingLoader): Use JvSynchronize. Special case system class loader. (_Jv_FindClassInCache): Likewise. (_Jv_UnregisterClass): Use JvSynchronize. Free old loader info. (_Jv_FindClass): Special case system class loader. * java/lang/natClass.cc (_Jv_abstractMethodError): New function. (_Jv_SetVTableEntries): Put _Jv_abstractMethodError into empty vtable slots. (_Jv_LayoutVTableMethods): Don't generate vtable slot for a method in a final class. (_getDeclaredMethod): Don't return synthetic methods. (getDeclaredMethods): Likewise. (_getMethod): Likewise. (_getMethods): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@60319 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/ClassLoader.java (resolveClass0): Transformmark2002-12-131-6/+12
| | | | | | | | ClassNotFoundException to NoClassDefFoundError. Transform all other throwables to LinkageError. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@60097 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/ClassLoader.java (findLoadedClass): Now synchronized.tromey2002-12-121-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@60053 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/ClassLoader.java (loadedClasses): New field.tromey2002-12-111-24/+35
| | | | | | | | | | (defineClass): Fixed indentation. Put new class in loadedClasses. (findLoadedClass): Implement here. * java/lang/natClassLoader.cc (findLoadedClass): Removed. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@60043 138bc75d-0d04-0410-961f-82ee72b054a4
* * gnu/gcj/protocol/jar/Connection.java (getJarFile): download andmark2002-12-091-9/+115
| | | | | | | | | | | | | | | | | | cache remote jar files. * gnu/gcj/runtime/VMClassLoader.java: Don't construct jar URL, only add File.separator to URL when it is a directory. * java/lang/ClassLoader.java: Add Classpath javadoc. (parent): final. (getParent): Add (disabled) security check. (findLibrary): New default method. * java/net/JarURLConnection.java (getManifest): Implement. (getInputStream): Only create InputStream when entry exists. (getHeaders): Only use jarFileURLConnection or JarEntry to set length when they exist. * java/net/URLClassLoader.java: New/Rewritten version from Classpath. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@59949 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/ClassLoader.java (loadClass): Call loadClass ontromey2002-11-041-8/+12
| | | | | | | VMClassLoader, not findClass. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@58786 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/ClassLoader.java (resolveClass0): Set cause fortromey2002-09-191-11/+18
| | | | | | | newly-created exception. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@57310 138bc75d-0d04-0410-961f-82ee72b054a4
* 2002-08-07 Bryce McKinlay <bryce@waitaki.otago.ac.nz>bryce2002-08-071-22/+193
| | | | | | | | | | * java/lang/ClassLoader.java (getSystemClassLoader, findClass, defineClass, setSigners, getSystemResource, getSystemResourceAsStream, findResource, getResources, findResources): Add javadoc from classpath. (getSystemResources): Implemented. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@56092 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/Class.h (Class::desiredAssertionStatus): Declare.tromey2002-06-111-4/+117
| | | | | | | | | | | | | | | | | | | | | | | (Class::getPackagePortion): Likewise. * java/lang/Class.java (desiredAssertionStatus): New method from Classpath. (getPackagePortion): Likewise. * java/lang/VMClassLoader.java (defaultAssertionStatus, packageAssertionStatus, classAssertionStatus): New methods from Classpath. * java/lang/ClassLoader.java (defaultAssertionStatus, systemPackageAssertionStatus, packageAssertionStatus, systemClassAssertionStatus, classAssertionStatus): New fields from Classpath. (setDefaultAssertionStatus, setPackageAssertionStatus, setClassAssertionStatus, clearAssertionStatus): New methods from Classpath. * Makefile.in: Rebuilt. * Makefile.am (core_java_source_files): Added AssertionError.java. * java/lang/AssertionError.java: New from Classpath. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54517 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/ClassLoader.java (defineClass): Rethrow anytromey2001-12-071-1/+1
| | | | | | | LinkageError. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@47780 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/reflect/Field.java (Field): New constructor.tromey2001-10-241-0/+1
| | | | | | | | * java/lang/ClassLoader.java (defineClass(String,byte[],int,int)): Throw ClassFormatError. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@46458 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/ClassLoader.java (system): Remove static field.bothner2001-09-011-6/+3
| | | | | | | | | | | | | (getSystemClassLoader): Get gnu.gcj.runtime.VMClassLoader.instance directly instead of using it to set the system field. (loadClass): Use VMClassLoader.instance instead of system field. (findSystemClass): Similar. * prims.cc (_Jv_RunMain): Clear VMClassLoader::instance rather than ClassLoader::system which no longer exists. * java/lang/natClassLoader.java (_Jv_FindClass): Simplify. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45343 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/Class.h (_Jv_Self): New union type.bryce2001-05-061-4/+0
| | | | | | | | | | (Class): Manipulate vtable pointer via _Jv_Self union. Thanks to Jeff Sturm and Fergus Henderson. * java/lang/ClassLoader.java: Remove dead code fragment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41876 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/java:bryce2001-04-251-26/+184
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-04-25 Bryce McKinlay <bryce@waitaki.otago.ac.nz> * decl.c (init_decl_processing): Add new class "protectionDomain" field. * class.c (make_class_data): Set initial value for "protectionDomain". libjava: 2001-04-25 Bryce McKinlay <bryce@albatross.co.nz> java.security merge and ClassLoader compliance fixes. * java/lang/Class.h (Class): Include ProtectionDomain.h. New protectionDomain field. (forName): Add initialize parameter. Fixes declaration to comply with JDK spec. * java/lang/natClass.cc (forName): Correct declaration of the three-arg variant. Honour "initialize" flag. (getProtectionDomain0): New method. * java/lang/Class.java: Fix forName() declaration. (getPackage): New method based on Classpath implementation. (getProtectionDomain0): New native method decl. (getProtectionDomain): New method. * java/lang/ClassLoader.java (getParent): Now final. (definedPackages): New field. (getPackage): New. (defineClass): New variant with protectionDomain argument. (definePackage): New. (getPackages): New. (findSystemClass): Now final. (getSystemResourceAsStream): Remove redundant "final" modifier. (getSystemResource): Remove redundant "final" modifier. (getResources): Now final. (protectionDomainPermission): New static field. (unknownProtectionDomain): Ditto. (defaultProtectionDomain): Ditto. (getSystemClassLoader): Now non-native. * java/util/ResourceBundle.java (tryGetSomeBundle): Use the correct arguments for Class.forName(). * java/lang/Package.java: New file. * gnu/gcj/runtime/VMClassLoader.java (getVMClassLoader): Removed. (instance): Static initialize singleton. (findClass): Override this, not findSystemClass. * java/lang/natClassLoader.cc (defineClass0): Set class's protectionDomain field as specified. (getSystemClassLoader): Removed. (findClass): Renamed from findSystemClass. Call the interpreter via URLClassLoader.findClass if loading class via dlopen fails. * java/security/*.java: java.security import/merge with Classpath. * java/security/acl/*.java: Likewise. * java/security/interfaces/*.java: Likewise. * java/security/spec/*.java: Likewise. * java/net/NetPermission.java: Likewise. * java/net/SocketPermission.java: Likewise. * gnu/java/security/provider/DefaultPolicy.java: Likewise. * Makefile.am: Add new classes. * Makefile.in: Rebuilt. * gcj/javaprims.h: CNI namespace rebuild. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41543 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.in: Rebuilt.tromey2000-11-271-1/+0
| | | | | | | | | | | | * 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@37772 138bc75d-0d04-0410-961f-82ee72b054a4
* 2000-11-25 Anthony Green <green@redhat.com>green2000-11-261-12/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * prims.cc (_Jv_NewObjectArray): Undo placement change. (_Jv_NewPrimArray): Likewise. * gcj/array.h (__JArray): Undo const change. Removed constructor. (class JArray): Removed constructor. * java/lang/Thread.java (context_class_loader): New private data. (getContextClassLoader): New method. (setContextClassLoader): New method. (Thread): Initialize context_class_loader. * java/net/URLClassLoader.java: Import java.util.Enumeration. (getResource): Rename to findResource. (findResource): New method. Used to be getResource. (getResourceAsStream): Deleted. (jarFileize): Extracted logic from URLClassLoader constructor into this new private method. (addURL): New protected method. (URLClassLoader): Call jarFileize. Use addElement instead of insertElementAt. (findResources): New method. * java/lang/ClassLoader.java: Import java.util.Enumeration. (getResource): Implement correct logic. (findResource): New method. (getResources): New method. (findClass): Create a ClassNotFoundException with the name of the class rather than nothing at all. (defineClass) Only throw ClassFormatError. * java/lang/Class.java (forName): New method. * java/lang/Class.h (forName): New method. * java/lang/natClass.cc (forName): New method. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@37751 138bc75d-0d04-0410-961f-82ee72b054a4
* * All files: Updated copyright information.tromey2000-03-071-1/+1
| | | | | | | | | * COPYING: New file. * COPYING.LIB: Removed. * LIBGCJ_LICENSE: We now use GPL + special exception. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32387 138bc75d-0d04-0410-961f-82ee72b054a4
* * include/java-interp.h: Don't include MethodInvocation.h.tromey2000-03-021-23/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (class _Jv_InterpMethod): Don't make MethodInvocation a friend. * Makefile.in: Rebuilt. * Makefile.am (gnu/gcj/runtime/MethodInvocation.h): Removed. (ordinary_java_source_files): Don't mention MethodInvocation.java. * gnu/gcj/runtime/MethodInvocation.java: Removed. * interpret.cc (MethodInvocation::continue1): Removed. (run): Handle exceptions here. * java/lang/ClassLoader.java (defineClass1, defineClass2): Removed. * java/lang/natClassLoader.cc (defineClass0): Catch exceptions here. (defineClass2): Removed. * java/lang/reflect/Method.java (hack_trampoline, hack_call): Removed. * java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Catch exceptions here. (hack_call): Removed. * java/lang/Class.h (Class): Removed hackRunInitializers, hackTrampoline. * java/lang/natClass.cc (hackRunInitializers): Removed. (initializeClass): Catch exceptions here. Include ExceptionInInitializerError.h. * java/lang/Class.java (hackTrampoline, hackRunInitializers): Removed. * java/lang/Object.h (Object): Don't mention hack12_6. * java/lang/natObject.cc (_Jv_FinalizeObject): Catch exceptions here. * java/lang/Object.java (hack12_6): Removed. * java/lang/natThread.cc (run_): Renamed. Catch exceptions here. (start): Use run_, not run__. * java/lang/Thread.java (run_): Renamed from run__; old run_ removed. * jni.cc (_Jv_JNI_FindClass): Handle exceptions. (_Jv_JNI_EnsureLocalCapacity): Likewise. (_Jv_JNI_DefineClass): Likewise. (_Jv_JNI_ThrowNew): Likewise. (_Jv_JNI_AllocObject): Likewise. (_Jv_JNI_GetAnyMethodID): Likewise. (_Jv_JNI_CallAnyMethodV): Likewise. (_Jv_JNI_CallAnyMethodA): Likewise. (_Jv_JNI_CallAnyVoidMethodV): Likewise. (_Jv_JNI_CallAnyVoidMethodA): Likewise. (_Jv_JNI_GetAnyFieldID): Likewise. (_Jv_JNI_NewString): Likewise. (_Jv_JNI_NewStringUTF): Likewise. (_Jv_JNI_GetStringUTFChars): Likewise. (_Jv_JNI_NewObjectArray): Likewise. (_Jv_JNI_NewPrimitiveArray): Likewise. (_Jv_JNI_GetPrimitiveArrayRegion): Likewise. (_Jv_JNI_GetStringRegion): Likewise. (_Jv_JNI_GetStringUTFRegion): Likewise. (_Jv_JNI_SetPrimitiveArrayRegion): Likewise. (_Jv_JNI_MonitorEnter): Likewise. (_Jv_JNI_MonitorExit): Likewise. (_Jv_JNI_ToReflectedField): Likewise. (_Jv_JNI_ToReflectedMethod): Likewise. (_Jv_JNI_RegisterNatives): Likewise. (_Jv_JNI_AttachCurrentThread): Likewise. (_Jv_JNI_DestroyJavaVM): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@32294 138bc75d-0d04-0410-961f-82ee72b054a4
* * All files: Updated copyright to reflect Cygnus purchase.tromey2000-01-191-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31504 138bc75d-0d04-0410-961f-82ee72b054a4
* * gnu/gcj/runtime/VMClassLoader.java (getVMClassLoader): Newtromey1999-10-181-7/+1
| | | | | | | | | | | | | | method. (redirect): New static field. * java/lang/ClassLoader.java (getSystemClassLoader): Now native (getVMClassLoader0): Removed. * java/lang/natClassLoader.cc (getVMClassLoader0): Removed. (redirect): Removed. (getSystemClassLoader): Implemented. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30075 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/ClassLoader.java (getSystemResource): Usegreen1999-10-171-2/+2
| | | | | | | | | | | | | | | | | getSystemClassLoader instead of ClassLoader.system. (getSystemResourceAsStream): Ditto. * java/lang/natClassLoader.cc (redirect): Make static and remove #ifdef INTERPRETER so it is always defined. (getVMClassLoader0): Remove #ifdef INTERPRETER so it always returns a VMClassLoader. * java/util/ResourceBundle.java (trySomeGetBundle): Create a PropertyResourceBundle if a properties file is found before a ResourceBundle class. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@30048 138bc75d-0d04-0410-961f-82ee72b054a4
* * java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Renamedkrab1999-08-181-81/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28748 138bc75d-0d04-0410-961f-82ee72b054a4
* 1999-08-14 Per Bothner <per@bothner.com>tromey1999-08-141-11/+8
| | | | | | | | | | | * resolve.cc (_Jv_PrepareClass): Use ClassLoader::resolveClass0. * java/lang/natClass.cc (initializeClass): Likewise. * java/lang/ClassLoader.java (resolveClass0): New static method. (resolveClass): Call resolveClass0. (findSystemClass): No longer static. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28711 138bc75d-0d04-0410-961f-82ee72b054a4
* 1999-08-09 Anthony Green <green@cygnus.com>green1999-08-081-59/+367
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gij.cc: New file. * include/config.h.in: Rebuilt. * acconfig.h: Add INTERPRETER. * configure: Rebuilt. * Makefile.in: Rebuilt. * Makefile.am (libffi_files): Identify the libffi object files for inclusion in libgcj. (LIBFFIINCS): Define. * interpret.cc (gnu::gcj::runtime::MethodInvocation::continue1): Dummy definition for configurations without an interpreter. * java/net/natPlainSocketImpl.cc (getOption): Disamiguate call to java::lang::Boolean constructor. * include/java-interp.h: Always include java-cpool.h. * java/lang/natClassLoader.cc (getVMClassLoader0): Always return 0 when INTERPRETER not defined. * java/lang/Class.h (finalize): Define. * gnu/gcj/util/path/DirectoryPathEntry.java (getURL): Catch IOException from File.getCanonicalPath. (getStream): Likewise. * NEWS: More news. * THANKS: More thanks. 1999-08-09 Kresten Krab Thorup <krab@gnu.org> * resolve.cc (get_ffi_type_from_signature): Generate uint16 for jchar type. (_Jv_PrepareClass): Allow non-abstract classes to have abstract subclasses. (_Jv_ResolvePoolEntry): Revert subclass check for protected fields and methods. * interpret.cc (continue1/perform_invoke): Don't sign extend uint16 return val. (continue1/lshl,lshr): Push long, not int. (continue1/ulshr): Use UINT64, not long long. * defineclass.cc (handleFieldsEnd): Handle case when all fields are static. * java/lang/natClass.cc (forName): Add call to _Jv_InitClass. * java/lang/FirstThread.java (run): Add top-level exception handler. (run0): Renamed from run. 1999-08-08 Kresten Krab Thorup <krab@gnu.org> * configure.in (--with-interpreter): Added. * include/config.h.in (INTERPRETER): Added. * java/lang/ClassLoader.java: File replaced. * java/lang/VMClassLoader.java: New file. * java/lang/natClassLoader.cc: New file. * gnu/gcj/runtime/MethodInvocation.java: New file. * gnu/gcj/util/path/SearchPath.java: New file. * gnu/gcj/util/path/PathEntry.java: New file. * gnu/gcj/util/path/DirectoryPathEntry.java: New file. * gnu/gcj/util/path/ZipPathEntry.java: New file. * gnu/gcj/util/path/URLPathEntry.java: New file. * gnu/gcj/util/path/CacheEntry.java: New file. * include/java-interp.h: New file. * include/java-cpool.h: New file. * include/java-insns.h: New file. * defineclass.cc: New file. * interpret.cc: New file. * resolve.cc: New file. * java/lang/natClass.cc (loaded_classes, _Jv_RegisterClass, _Jv_RegisterClasses, _Jv_FindClassInCache, _Jv_FindClass, _Jv_NewClass, _Jv_FindArrayClass): Moved to natClassLoader.cc. (finalize): New. (STATE_NOTHING, STATE_RESOLVED, STATE_IN_PROGRESS, STATE_DONE, STATE_ERROR): Moved to java/lang/Class.h and renamed with JV_ prefix. (initializeClass): Use new JV_ prefixed names. Also, call ClassLoader::resolveClass instead of _Jv_ResolveClass. * java/lang/Class.h (JV_STATE_PRELOADING, JV_STATE_LOADING, JV_STATE_LOADED, JV_STATE_COMPILED, JV_STATE_PREPARED, JV_STATE_LINKED): New. (_Jv_WaitForState, _Jv_RegisterInitiatingLoader, _Jv_UnregisterClass, _Jv_InternClassStrings): New friends. (_Jv_IsInterpretedClass, _Jv_InitField, _Jv_LookupDeclaredMethod, _Jv_DetermineVTableIndex, _Jv_ResolvePoolEntry, _Jv_PrepareClass, _Jv_ClassReader, _Jv_InterpClass, _Jv_InterpMethod, _Jv_InterpMethodInvocation): New friends for interpreter. (finalize): New. (CONSTANT_Class, CONSTANT_String, etc.): Moved to include/java-cpool.h and renamed with JV_ prefix. * include/jvm.h (_Jv_makeUtf8Const, _Jv_makeUtf8TypeConst): New decls. (_Jv_UnregisterClass): New decl. * java/lang/natClassLoader.cc (_Jv_FindArrayClass): Added class loader argument. (_Jv_FindClass): Use class loader. * prims.cc (_Jv_makeUtf8Const): New function. (_Jv_NewObjectArray): Change use of _Jv_FindArrayClass. (_Jv_NewPrimArray): Ditto. (_Jv_FindClassFromSignature): Ditto. * java/lang/reflect/natArray.cc (newInstance): Ditto. * java/lang/reflect/natMethod.cc (getType): Ditto. * include/java-field.h (_Jv_Field::isRef): Make robust for non-resolved contexts. * boehm.cc (_Jv_MarkObj): Mark interpreter-related fields. Also, don't mark class->next field. * java/lang/VirtualMachineError.java: Added FIXME note. * configure.in (INTERPSPEC): New spec. * libgcj.spec.in: Added INTERPSPEC. * Makefile.am: Added gcjh friends for java/lang/VMClassLoader and gnu/gcj/runtime/MethodInvocation. (libgcj_la_SOURCES): Added resolve.cc defineclass.cc interpret.cc. (ordinary_java_source_files): Added above mentioned java classes. * configure: Rebuilt. * Makefile.in: Rebuilt. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@28597 138bc75d-0d04-0410-961f-82ee72b054a4
* Initial revisiontromey1999-04-071-0/+94
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26263 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud