David Daney
46ecc2bc5c
re PR libgcj/31228 (Race condition between setting close-on-exec and Runtime.exec())
...
PR libgcj/31228
* configure.ac: Add checks for getrlimit and sys/resource.h.
* include/posix.h (_Jv_platform_close_on_exec): Remove.
* include/config.h.in: Regenerate.
* configure: Regenerate.
* gnu/java/nio/channels/natFileChannelPosix.cc (open): Remove call to
_Jv_platform_close_on_exec;
* gnu/java/net/natPlainSocketImplPosix.cc (create): Likewise.
(accept): Likewise.
* gnu/java/net/natPlainDatagramSocketImplPosix.cc (create):Likewise.
* java/lang/natPosixProcess.cc: Include sys/resource.h.
(nativeSpawn): Close all file descriptors. Don't set FD_CLOEXEC on
pipes.
From-SVN: r123138
2007-03-23 00:06:41 +00:00
Keith Seitz
bde6c7a990
java-interp.h (_Jv_InterpClass): Declare friend function _Jv_GetInterpClassSourceFile.
...
* include/java-interp.h (_Jv_InterpClass): Declare
friend function _Jv_GetInterpClassSourceFile.
* java/lang/Class.h (Class): Likewise.
* java/lang/natClass.cc (_Jv_GetInterpClassSourceFile):
New function.
* gnu/classpath/jdwp/natVMVirtualMachine.cc
(getSourceFile): Implement.
From-SVN: r122882
2007-03-13 19:27:13 +00:00
Marco Trudel
ff4b07ef6e
natString.cc (getBytes (jstring enc)): Fixed the loop for multiple cycles, Code cleanup
...
2007-03-12 Marco Trudel <mtrudel@gmx.ch>
* java/lang/natString.cc (getBytes (jstring enc)):
Fixed the loop for multiple cycles, Code cleanup
From-SVN: r122859
2007-03-12 19:48:32 +00:00
Mohan Embar
1611915067
Win32Process.java: Added nested class EOFInputStream.
...
* java/lang/Win32Process.java: Added nested class EOFInputStream.
* java/lang/natWin32Process.cc (ChildProcessPipe): Added DUMMY
enum and implementation.
(startProcess): Use redirect flag.
* classpath/lib/java/lang/Win32Process.class: Regenerated.
* classpath/lib/java/lang/Win32Process$EOFInputStream.class: New.
* gcj/javaprims.h: Regenerated.
* java/lang/Win32Process$EOFInputStream.h: New.
From-SVN: r122668
2007-03-07 18:05:39 +00:00
Alexandre Oliva
18fa3240db
ffi.h.in (ffi_closure_alloc, [...]): New.
...
libffi/ChangeLog:
* include/ffi.h.in (ffi_closure_alloc, ffi_closure_free): New.
(ffi_prep_closure_loc): New.
(ffi_prep_raw_closure_loc): New.
(ffi_prep_java_raw_closure_loc): New.
* src/closures.c: New file.
* src/dlmalloc.c [FFI_MMAP_EXEC_WRIT] (struct malloc_segment):
Replace sflags with exec_offset.
[FFI_MMAP_EXEC_WRIT] (mmap_exec_offset, add_segment_exec_offset,
sub_segment_exec_offset): New macros.
(get_segment_flags, set_segment_flags, check_segment_merge): New
macros.
(is_mmapped_segment, is_extern_segment): Use get_segment_flags.
(add_segment, sys_alloc, create_mspace, create_mspace_with_base,
destroy_mspace): Use new macros.
(sys_alloc): Silence warning.
* Makefile.am (libffi_la_SOURCES): Add src/closures.c.
* Makefile.in: Rebuilt.
* src/prep_cif [FFI_CLOSURES] (ffi_prep_closure): Implement in
terms of ffi_prep_closure_loc.
* src/raw_api.c (ffi_prep_raw_closure_loc): Renamed and adjusted
from...
(ffi_prep_raw_closure): ... this. Re-implement in terms of the
renamed version.
* src/java_raw_api (ffi_prep_java_raw_closure_loc): Renamed and
adjusted from...
(ffi_prep_java_raw_closure): ... this. Re-implement in terms of
the renamed version.
* src/alpha/ffi.c (ffi_prep_closure_loc): Renamed from
(ffi_prep_closure): ... this.
* src/pa/ffi.c: Likewise.
* src/cris/ffi.c: Likewise. Adjust.
* src/frv/ffi.c: Likewise.
* src/ia64/ffi.c: Likewise.
* src/mips/ffi.c: Likewise.
* src/powerpc/ffi_darwin.c: Likewise.
* src/s390/ffi.c: Likewise.
* src/sh/ffi.c: Likewise.
* src/sh64/ffi.c: Likewise.
* src/sparc/ffi.c: Likewise.
* src/x86/ffi64.c: Likewise.
* src/x86/ffi.c: Likewise.
(FFI_INIT_TRAMPOLINE): Adjust.
(ffi_prep_raw_closure_loc): Renamed and adjusted from...
(ffi_prep_raw_closure): ... this.
* src/powerpc/ffi.c (ffi_prep_closure_loc): Renamed from
(ffi_prep_closure): ... this.
(flush_icache): Adjust.
boehm-gc/ChangeLog:
* include/gc.h (GC_REGISTER_FINALIZER_UNREACHABLE): New.
(GC_register_finalizer_unreachable): Declare.
(GC_debug_register_finalizer_unreachable): Declare.
* finalize.c (GC_unreachable_finalize_mark_proc): New.
(GC_register_finalizer_unreachable): New.
(GC_finalize): Handle it.
* dbg_mlc.c (GC_debug_register_finalizer_unreachable): New.
(GC_debug_register_finalizer_no_order): Fix whitespace.
libjava/ChangeLog:
* include/jvm.h (_Jv_ClosureListFinalizer): New.
(_Jv_Linker::create_error_method): Adjust.
* boehm.cc (_Jv_ClosureListFinalizer): New.
* nogc.cc (_Jv_ClosureListFinalizer): New.
* java/lang/Class.h (class _Jv_ClosureList): New.
(class java::lang::Class): Declare it as friend.
* java/lang/natClass.cc (_Jv_ClosureList::releaseClosures): New.
(_Jv_ClosureList::registerClousure): New.
* include/execution.h (_Jv_ExecutionEngine): Add get_closure_list.
(_Jv_CompiledEngine::do_get_closure_list): New.
(_Jv_CompiledEngine::_Jv_CompiledEngine): Use it.
(_Jv_IndirectCompiledClass): Add closures.
(_Jv_IndirectCompiledEngine::get_aux_info): New.
(_Jv_IndirectCompiledEngine::do_allocate_field_initializers): Use
it.
(_Jv_IndirectCompiledEngine::do_get_closure_list): New.
(_Jv_IndirectCompiledEngine::_Jv_IndirectCompiledEngine): Use it.
(_Jv_InterpreterEngine::do_get_closure_list): Declare.
(_Jv_InterpreterEngine::_Jv_InterpreterEngine): Use it.
* interpret.cc (FFI_PREP_RAW_CLOSURE): Use _loc variants.
(node_closure): Add closure list.
(_Jv_InterpMethod::ncode): Add jclass argument. Use
ffi_closure_alloc and the separate code pointer. Register the
closure for finalization.
(_Jv_JNIMethod::ncode): Likewise.
(_Jv_InterpreterEngine::do_create_ncode): Pass klass to ncode.
(_Jv_InterpreterEngine::do_get_closure_list): New.
* include/java-interp.h (_Jv_InterpMethod::ncode): Adjust.
(_Jv_InterpClass): Add closures field.
(_Jv_JNIMethod::ncode): Adjust.
* defineclass.cc (_Jv_ClassReader::handleCodeAttribute): Adjust.
(_Jv_ClassReader::handleMethodsEnd): Likewise.
* link.cc (struct method_closure): Add closure list.
(_Jv_Linker::create_error_method): Add jclass argument. Use
ffi_closure_alloc and the separate code pointer. Register the
closure for finalization.
(_Jv_Linker::link_symbol_table): Remove outdated comment about
sharing of otable and atable. Adjust.
* java/lang/reflect/natVMProxy.cc (ncode_closure): Add closure
list.
(ncode): Add jclass argument. Use ffi_closure_alloc and the
separate code pointer. Register the closure for finalization.
(java::lang::reflect::VMProxy::generateProxyClass): Adjust.
* testsuite/libjava.jar/TestClosureGC.java: New.
* testsuite/libjava.jar/TestClosureGC.out: New.
* testsuite/libjava.jar/TestClosureGC.xfail: New.
* testsuite/libjava.jar/TestClosureGC.jar: New.
From-SVN: r122652
2007-03-07 07:27:25 +00:00
Mark Wielaard
666ff4f65d
Character.java: Re-merged with Classpath.
...
2007-03-05 Mark Wielaard <mark@klomp.org>
* java/lang/Character.java: Re-merged with Classpath.
* java/lang/natString.cc (nativeCompareTo): Renamed from
compareTo.
* java/lang/StringBuilder.java: Re-merged with Classpath.
* java/lang/String.java: Re-merged with Classpath.
(nativeCompareTo): Renamed from compareTo.
* java/lang/StringBuffer.java: Re-merged with Classpath.
* jni.cc (_Jv_JNI_GetAnyMethodID): Split calls to append.
From-SVN: r122560
2007-03-05 17:27:44 +00:00
Andrew Haley
a29114a3be
natVMProxy.cc (ncode_closure.meth): Delete.
...
2007-03-05 Andrew Haley <aph@redhat.com>
* java/lang/reflect/natVMProxy.cc (ncode_closure.meth): Delete.
(generateProxyClass): Don't pass method to ncode.
(run_proxy): Call _Jv_GetReflectedMethod to find the proxy method.
* java/lang/reflect/Method.h: Rebuild.
* java/lang/reflect/Method.java (internalGetParameterTypes,
internalGetExceptionTypes): New methods.
* headers.txt (class java/lang/reflect/Method): Declare
_Jv_GetReflectedMethod. Be its friend.
* java/lang/natClass.cc (_Jv_GetReflectedMethod): New method.
* java/lang/Class.h: Declare it. Be its friend.
From-SVN: r122554
2007-03-05 16:06:27 +00:00
Tom Tromey
f4a2a1deec
sources.am, [...]: Rebuilt.
...
* sources.am, Makefile.in: Rebuilt.
* scripts/makemake.tcl (emit_package_rule): Don't omit
VMProcess.java.
* Makefile.am (nat_source_files): Added natVMProcess.cc.
(inner_nat_headers): Added ImmediateEOFInputStream.h.
* gcj/javaprims.h: Regenerated.
* java/lang/System.java (EnvironmentMap): Now package-private.
(EnvironmentMap(Map)): New constructor.
(EnvironmentMap.put): New method.
* java/lang/natWin32Process.cc (startProcess): Update.
* java/lang/Win32Process.java (Win32Process): Added 'redirect'
argument.
(startProcess): Likewise.
* java/lang/EcosProcess.java (EcosProcess): Added 'redirect'
argument.
* java/lang/natPosixProcess.cc (nativeSpawn): Handle redirection.
* java/lang/PosixProcess.java (redirect): New field.
(PosixProcess): Added 'redirect' argument.
* java/lang/natRuntime.cc (execInternal): Added 'redirect'
argument to Process creation.
* java/lang/natVMProcess.cc: New file.
* java/lang/ProcessBuilder.java: Removed.
* java/lang/VMProcess.java: New file.
From-SVN: r122553
2007-03-05 15:57:13 +00:00
Tom Tromey
3cf0c3c57e
Updating header files. Earlier change here seems to have been in error.
...
From-SVN: r122550
2007-03-05 14:29:47 +00:00
Andrew Haley
39cd07dfc7
natClass.cc (parseAnnotationElement): Correct long annotations to read JV_CONSTANT_Long, not JV_CONSTANT_Double.
...
2007-03-03 Andrew Haley <aph@redhat.com>
* java/lang/natClass.cc (parseAnnotationElement): Correct long
annotations to read JV_CONSTANT_Long, not JV_CONSTANT_Double.
From-SVN: r122545
2007-03-05 11:33:46 +00:00
Andrew Haley
386e9d408b
AnnotationInvocationHandler.java: Generify in a few places.
...
2007-03-02 Andrew Haley <aph@redhat.com>
* sun/reflect/annotation/AnnotationInvocationHandler.java:
Generify in a few places.
(equals): Rewrite to use invoke on local proxy.
(deepToString): Remove most of it.
(toString): Make nonstatic.
(arrayClone): Delete.
(coerce): New method.
(invoke): Rewrite to handle gcj's structures correctly.
* java/lang/natClass.cc (getDeclaredAnnotations): Fix test for
null loader.
* sources.am: Regenerate.
* Makefile.am: Likewise.
From-SVN: r122485
2007-03-02 19:34:18 +00:00
Gary Benson
19b9eb7102
2007-02-23 Gary Benson <gbenson@redhat.com>
...
* java/lang/VMCompiler.java
(compileClass): Don't lose zeros from within the digest.
From-SVN: r122259
2007-02-23 15:15:58 +00:00
Jakub Jelinek
b3502aa8d4
re PR libgcj/17002 (java.util.TimeZone.getDefault() is broken)
...
libjava/
PR libgcj/17002
PR classpath/28550
* java/util/VMTimeZone.java (getDefaultTimeZoneId): To read
/etc/localtime, use ZoneInfo.readTZFile instead of
VMTimeZone.readtzFile. Get better timezone name for /etc/localtime,
either if it is a symlink or through /etc/sysconfig/clock.
(readSysconfigClockFile): New static method.
(readtzFile): Removed.
* java/lang/System.java: Add gnu.java.util.zoneinfo.dir to comments.
* posix.cc (_Jv_platform_initProperties): Set
gnu.java.util.zoneinfo.dir.
* sources.am (gnu_java_util_source_files): Add
classpath/gnu/java/util/ZoneInfo.java.
* Makefile.in: Regenerated.
* java/util/VMTimeZone.h: Regenerated.
* java/util/TimeZone.h: Regenerated.
* gnu/java/util/ZoneInfo.h: Generated.
libjava/classpath/
* java/util/Date.java (parse): Properly parse 09:01:02 as
hours/minutes/seconds, not as hours/minutes/year.
* java/util/SimpleTimeZone.java (SimpleTimeZone): Simplify
{start,end}TimeMode constructor by calling shorter constructor,
set {start,end}TimeMode fields after it returns.
(setStartRule): Don't adjust startTime into WALL_TIME. Set
startTimeMode to WALL_TIME.
(endStartRule): Similarly.
(getOffset): Handle properly millis + dstOffset overflowing into the
next day. Adjust startTime resp. endTime based on startTimeMode
resp. endTimeMode.
* java/util/TimeZone.java (zoneinfo_dir, availableIDs, aliases0): New
static fields.
(timezones): Remove synchronized keyword. Set zoneinfo_dir.
If non-null, set up aliases0 and don't put anything into
timezones0.
(defaultZone): Call getTimeZone instead of timezones().get.
(getDefaultTimeZone): Fix parsing of EST5 or EST5EDT6. Use
getTimeZoneInternal instead of timezones().get.
(parseTime): Parse correctly hour:minute.
(getTimeZoneInternal): New private method.
(getTimeZone): Do the custom ID checking first, canonicalize
ID for custom IDs as required by documentation. Call
getTimeZoneInternal to handle the rest.
(getAvailableIDs(int)): Add locking. Handle zoneinfo_dir != null.
(getAvailableIDs(File,String,ArrayList)): New private method.
(getAvailableIDs()): Add locking. Handle zoneinfo_dir != null.
* gnu/java/util/ZoneInfo.java: New file.
From-SVN: r122229
2007-02-22 17:04:55 +01:00
Gary Benson
71d6fc6b0b
GregorianCalendar.java: Removed.
...
2007-02-21 Gary Benson <gbenson@redhat.com>
* java/util/GregorianCalendar.java: Removed.
* sources.am, Makefile.in: Rebuilt.
From-SVN: r122198
2007-02-21 13:49:01 +00:00
Gary Benson
d9f646e4b9
XEventLoop.h: Regenerated.
...
2007-02-20 Gary Benson <gbenson@redhat.com>
* gnu/awt/xlib/XEventLoop.h: Regenerated.
* gnu/java/awt/peer/gtk/GThreadMutex.h: Likewise.
* gnu/java/rmi/server/ConnectionRunnerPool$ConnectionRunner.h:
Likewise.
* gnu/java/rmi/server/UnicastConnectionManager.h: Likewise.
* java/lang/SecurityManager.h: Likewise.
* java/lang/Thread.h: Likewise.
* java/security/VMSecureRandom$Spinner.h: Likewise.
* java/util/concurrent/atomic/AtomicBoolean.h: Likewise.
* java/util/concurrent/atomic/AtomicInteger.h: Likewise.
* java/util/concurrent/atomic/AtomicLong.h: Likewise.
* java/util/concurrent/atomic/AtomicReference.h: Likewise.
* java/util/concurrent/ConcurrentHashMap$HashEntry.h: Likewise.
* java/util/concurrent/ConcurrentHashMap$Segment.h: Likewise.
* java/util/concurrent/ConcurrentLinkedQueue.h: Likewise.
* java/util/concurrent/ConcurrentLinkedQueue$Node.h: Likewise.
* java/util/concurrent/ConcurrentSkipListMap.h: Likewise.
* java/util/concurrent/ConcurrentSkipListMap$Index.h: Likewise.
* java/util/concurrent/ConcurrentSkipListMap$Node.h: Likewise.
* java/util/concurrent/Exchanger.h: Likewise.
* java/util/concurrent/Exchanger$Node.h: Likewise.
* java/util/concurrent/FutureTask$Sync.h: Likewise.
* java/util/concurrent/LinkedBlockingQueue$Node.h: Likewise.
* java/util/concurrent/locks/AbstractQueuedLongSynchronizer.h:
Likewise.
* java/util/concurrent/locks/AbstractQueuedLongSynchronizer$Node.h:
Likewise.
* java/util/concurrent/locks/AbstractQueuedSynchronizer.h: Likewise.
* java/util/concurrent/locks/AbstractQueuedSynchronizer$Node.h:
Likewise.
* java/util/concurrent/ScheduledThreadPoolExecutor.h: Likewise.
* java/util/concurrent/SynchronousQueue.h: Likewise.
* java/util/concurrent/SynchronousQueue$TransferQueue.h: Likewise.
* java/util/concurrent/SynchronousQueue$TransferQueue$QNode.h:
Likewise.
* java/util/concurrent/SynchronousQueue$TransferStack.h: Likewise.
* java/util/concurrent/SynchronousQueue$TransferStack$SNode.h:
Likewise.
* java/util/concurrent/ThreadPoolExecutor.h: Likewise.
* java/util/concurrent/ThreadPoolExecutor$Worker.h: Likewise.
* java/util/logging/ErrorManager.h: Likewise.
* javax/swing/plaf/basic/BasicSpinnerUI$2.h: Likewise.
* javax/swing/plaf/basic/BasicSpinnerUI$4.h: Likewise.
From-SVN: r122161
2007-02-20 13:06:37 +00:00
David Daney
599b39ce9d
Thread.java (Thread(ThreadGroup, Runnable, String)): Pass new parameter constructor.
...
* java/lang/Thread.java (Thread(ThreadGroup, Runnable, String)): Pass
new parameter constructor.
(Thread(ThreadGroup, Runnable, String, long)): Same.
(Thread(String, boolean)): New constructor.
(Thread(Thread, ThreadGroup, Runnable, String): Add parameter
noInheritableThreadLocal, don't call
InheritableThreadLocal.newChildThread if set.
* java/lang/PosixProcess.java(ProcessManager()): Set
noInheritableThreadLocal in super.
* java/lang/natThread.cc (_Jv_AttachCurrentThread): Pass new
parameter to Thread constructor.
(_Jv_AttachCurrentThreadAsDaemon): Same.
* java/lang/Thread.h: Regenerate.
* classpath/lib/java/lang/Thread.class: Same.
* classpath/lib/java/lang/PosixProcess$EOFInputStream.class: Same.
* classpath/lib/java/lang/PosixProcess.class: Same.
* classpath/lib/java/lang/Thread$State.class: Same.
* classpath/lib/java/lang/PosixProcess$ProcessManager.class: Same.
From-SVN: r122054
2007-02-16 21:23:10 +00:00
Andrew Haley
24d8ce15e2
[multiple changes]
...
2007-02-15 Andrew Haley <aph@redhat.com>
* Makefile.am (nat_source_files): Remove
java/lang/management/natVMManagementFactory.cc.
* java/lang/Thread.java (getStackTrace): Use reflection to call
the ManagementFactory.
* java/lang/management/VMManagementFactory.java: Remove native
methods.
* java/lang/management/natVMManagementFactory.cc: Deleted.
* sources.am: Regnerate.
* scripts/makemake.tcl: Add new "bcheaders" type.
Move java/lang/management and gnu/classpath/management to "bc".
Move gnu/java/lang/management to "bcheaders".
2007-02-16 Andrew Haley <aph@redhat.com>
* gnu/java/lang/management/MemoryMXBeanImpl.java,
javax/management/MBeanServerDelegate.java: Use
gnu.javax.management.ListenerData rather than
gnu.classpath.ListenerData.
* gnu/javax/management/ListenerData.java: Move here from
gnu/classpath/ListenerData.java.
From-SVN: r122041
2007-02-16 13:51:04 +00:00
David Daney
31429fbc3c
PlainSocketImpl.h: Regenerate.
...
* gnu/java/net/PlainSocketImpl.h: Regenerate.
* gnu/classpath/jdwp/VMVirtualMachine.h: Same.
* gnu/classpath/jdwp/VMFrame.h: Same.
* java/net/Socket.h: Same.
* java/util/Collections$UnmodifiableMap$UnmodifiableEntrySet.h: Same.
From-SVN: r122006
2007-02-15 17:03:49 +00:00
Tom Tromey
40b86e5f2c
Collections.java (UnmodifiableMap.toArray): Imported changes from Classpath.
...
libjava/classpath
* java/util/Collections.java (UnmodifiableMap.toArray): Imported
changes from Classpath.
libjava
* sources.am, Makefile.in: Rebuilt.
* java/lang/Socket.java: Removed override.
* java/lang/DatagramSocket.java: Removed override.
* gnu/java/net/PlainSocketImpl.java (localSocketAddress): New
field.
(getLocalAddress): New method.
* gnu/java/net/PlainDatagramSocketImpl.java
(PlainDatagramSocketImpl): Throws IOException.
* gnu/java/net/natPlainSocketImplPosix.cc (write): Remove
'sizeof'.
(read): Likewise.
From-SVN: r121866
2007-02-12 23:52:39 +00:00
Jakub Jelinek
cc297c1e03
VMTimeZone.java: Rewrite to handle both the old 'TZif\0' format and the new one.
...
2007-02-09 Jakub Jelinek <jakub@redhat.com>
* java/util/VMTimeZone.java: Rewrite to handle both the old
'TZif\0' format and the new one.
From-SVN: r121845
2007-02-12 14:39:44 +00:00
Tom Tromey
60e4646493
Checking in header files missed by earlier commit
...
From-SVN: r121672
2007-02-06 23:59:34 +00:00
Tom Tromey
14a9874595
* java/lang/ClassLoader.java (getResources): No longer final.
...
From-SVN: r121475
2007-02-01 23:00:01 +00:00
Tom Tromey
4d2446d99e
LogManager.java (loggers): Genericized.
...
* java/util/logging/LogManager.java (loggers): Genericized.
(addLogger): Merged.
(findAncestor): Likewise.
(getLogger): Likewise.
(getLoggerNames): Genericized.
(reset): Merged.
(getLevelProperty): Likewise.
* java/lang/reflect/Method.java (getDeclaringClass): Genericized.
* java/lang/reflect/Constructor.java (getParameterTypes):
Genericized.
(getExceptionTypes): Likewise.
(newInstance): Likewise.
* java/lang/reflect/Array.java (newInstance): Genericized.
* java/lang/Object.java (getClass): Genericized.
* java/nio/charset/spi/CharsetProvider.java (charsets):
Genericized.
* java/text/Collator.java: Implement Comparable<Object>.
From-SVN: r121473
2007-02-01 21:36:01 +00:00
Tom Tromey
0a32f469ac
Calendar.java: Implement Comparable<Calendar>.
...
* java/util/Calendar.java: Implement Comparable<Calendar>. Update
comments.
(clear): Call complete.
(setTimeZone): Call computeTime, computeFields.
(compareTo): New method.
* java/nio/charset/Charset.java: Implement Comparable<Charset>.
(availableCharsets): Genericized.
(aliases): Likewise.
(compareTo): Changed argument type.
* java/lang/ClassLoader.java (loadClass): Genericized.
(findClass): Likewise.
(defineClass): Likewise.
(resolveClass): Likewise.
(findSystemClass): Likewise.
(setSigners): Likewise.
(findLoadedClass): Likewise.
(getResources): Likewise.
(findResources): Likewise.
(getSystemResources): Likewise.
(checkInitialized): New method.
* java/lang/Class.java (getCanonicalName): New method.
From-SVN: r121471
2007-02-01 20:34:08 +00:00
Andrew Haley
5df3325225
prims.cc (_Jv_Abort): fflush (stderr).
...
2007-01-31 Andrew Haley <aph@redhat.com>
* prims.cc (_Jv_Abort): fflush (stderr).
* java/lang/natClassLoader.cc (_Jv_CheckABIVersion): Abort.
From-SVN: r121433
2007-01-31 19:04:35 +00:00
Tom Tromey
7679f36836
re PR libgcj/30606 (natVMURLConnection.cc:21: error: 'magic_t' does not name a typet name a type)
...
PR libgcj/30606:
* configure, include/config.h.in: Rebuilt.
* configure.ac: Check for magic_t in magic.h.
* java/net/natVMURLConnection.cc: Use HAVE_MAGIC_T.
From-SVN: r121425
2007-01-31 17:11:11 +00:00
Kyle Galloway
3927313117
java-interp.h: Added _Jv_Frame class and its two subclasses _Jv_InterpFrame and _Jv_NativeFrame.
...
2007-01-29 Kyle Galloway <kgallowa@redhat.com>
* include/java-interp.h: Added _Jv_Frame class and its two
subclasses _Jv_InterpFrame and _Jv_NativeFrame. Also moved
_Jv_FrameType from java-stack.h.
* include/java-stack.h: Removed _Jv_FrameType.
* java/lang/Thread.java: Added frame member to hold new
composite frame stack.
* java/lang/Thread.h: Regenerated.
* java/lang/Thread.class: Rebuilt.
* jni.cc (_Jv_JNIMethod::call): Push a frame onto the stack when
calling a JNI method.
* jvmti.cc (_Jv_JVMTI_GetStackTrace): New Method.
(_Jv_JVMTI_GetFrameCount): New method.
* stacktrace.cc (UnwindTraceFn): Modified to use new _Jv_Frame
classes.
* testsuite/libjava.jvmti/interp/getstacktrace.jar: New test.
* testsuite/libjava.jvmti/interp/natgetstacktrace.cc: New test.
* testsuite/libjava.jvmti/interp/getstacktrace.h: New test.
* testsuite/libjava.jvmti/interp/getstacktrace.jar: New test.
* testsuite/libjava.jvmti/interp/getstacktrace.out: Output file
for test.
From-SVN: r121314
2007-01-29 22:05:56 +00:00
Andrew Haley
6b05e79165
natClass.cc (initializeClass): Re-throw SecurityExceptions.
...
2007-01-26 Andrew Haley <aph@redhat.com>
* java/lang/natClass.cc (initializeClass): Re-throw
SecurityExceptions.
* java/lang/natVMClassLoader.cc (loadClass): checkPackageAccess.
* java/lang/ClassLoader.java: (loadClass): Likewise.
From-SVN: r121285
2007-01-29 13:14:38 +00:00
Tom Tromey
7969a3791e
libjava
...
* Updated headers.
libjava/classpath
* tools/gnu/classpath/tools/javah/FieldHelper.java (print): Print
'volatile' after field type.
From-SVN: r121215
2007-01-26 23:07:08 +00:00
Andrew Haley
9fe944471a
configure, [...]: Rebuilt.
...
2007-01-25 Andrew Haley <aph@redhat.com>
* configure, Makefile.in, include/config.h.in: Rebuilt.
* Makefile.am (libgcj_la_LIBADD): Removed $(LIBMAGIC).
* configure.ac: Don't check for libmagic.
* java/net/natVMURLConnection.cc (p_magic_open, p_magic_load,
p_magic_close, p_magic_buffer): New globals.
(init): Look up 'magic' functions.
(guessContentTypeFromBuffer): Updated.
From-SVN: r121183
2007-01-25 19:51:33 +00:00
Keith Seitz
2b3c67882e
Class.h (_Jv_GetClassStatus): Declare.
...
* java/lang/Class.h (_Jv_GetClassStatus): Declare.
* java/lang/natClass.cc (_Jv_GetClassStatus): New function.
* jvmti.cc (_Jv_JVMTI_GetClassStatus): New function.
(_Jv_JVMTI_Interface): Define GetClassStatus.
From-SVN: r121074
2007-01-23 01:06:10 +00:00
Tom Tromey
262fa8a4b5
re PR java/29812 (env->klass value is not updated during the native calls)
...
PR java/29812:
* testsuite/libjava.jni/pr29812.java: New file.
* testsuite/libjava.jni/pr29812_injar.java: New file.
* testsuite/libjava.jni/pr29812_injar.jar: New file.
* testsuite/libjava.jni/pr29812.out: New file.
* testsuite/libjava.jni/pr29812_injar.c: New file.
* testsuite/libjava.jni/pr29812_injar.h: New file.
* testsuite/libjava.jni/pr29812.jar: New file.
* testsuite/libjava.jni/pr29812.c: New file.
* testsuite/libjava.jni/pr29812.h: New file.
* testsuite/libjava.jni/jni.exp (gcj_jni_get_cxxflags_invocation):
New proc.
(gcj_jni_invocation_test_one): Use it.
(gcj_jni_pr29812): New proc.
(gcj_jni_run): Use it.
* java/lang/natRuntime.cc (_load): Push a new system frame before
calling JNI_OnLoad.
* include/jvm.h (_Jv_JNI_PopSystemFrame): Declare.
(_Jv_GetJNIEnvNewFrameWithLoader): Likewise.
* jni.cc (struct _Jv_JNI_LocalFrame) <marker>: Now unsigned char.
<allocated_p>: Now bool.
<loader>: New field.
(_Jv_JNI_EnsureLocalCapacity): Updated.
(_Jv_JNI_NewLocalRef): Likewise.
(_Jv_JNI_NewLocalRef): Likewise.
(_Jv_JNI_PopLocalFrame): Likewise.
(_Jv_JNI_FindClass): Likewise.
(_Jv_GetJNIEnvNewFrame): Likewise.
(_Jv_JNI_AttachCurrentThread): Likewise.
(_Jv_GetJNIEnvNewFrameWithLoader): New function.
(_Jv_GetJNIEnvNewFrame): Use it.
* include/jni_md.h (_CLASSPATH_JNIENV_CONTENTS): Removed 'klass'.
From-SVN: r121064
2007-01-22 23:04:16 +00:00
Gary Benson
463c03f1bc
natVMPipeEcos.cc: Renamed from gnu/java/nio/natPipeImplEcos.cc.
...
2007-01-18 Gary Benson <gbenson@redhat.com>
* gnu/java/nio/natVMPipeEcos.cc:
Renamed from gnu/java/nio/natPipeImplEcos.cc.
* gnu/java/nio/natVMPipePosix.cc:
Renamed from gnu/java/nio/natPipeImplPosix.cc.
* gnu/java/nio/natVMPipeWin32.cc:
Renamed from gnu/java/nio/natPipeImplWin32.cc.
* gnu/java/nio/natVMSelectorEcos.cc:
Renamed from gnu/java/nio/natSelectorImplEcos.cc.
* gnu/java/nio/natVMSelectorPosix.cc:
Renamed from gnu/java/nio/natSelectorImplPosix.cc.
* gnu/java/nio/natVMSelectorWin32.cc:
Renamed from gnu/java/nio/natSelectorImplWin32.cc.
* java/io/natVMObjectInputStream.cc:
Renamed from java/io/natObjectInputStream.cc.
* java/lang/natVMDouble.cc:
Renamed from java/lang/natDouble.cc.
* java/lang/natVMFloat.cc:
Renamed from java/lang/natFloat.cc.
* Makefile.am, configure.ac: Reflect the above.
* Makefile.in, configure: Rebuilt.
From-SVN: r120895
2007-01-18 11:32:40 +00:00
Keith Seitz
6ef43f5665
natThread.cc (finish_): Add JVMTI ThreadEnd notification.
...
* java/lang/natThread.cc (finish_): Add JVMTI ThreadEnd notification.
(_Jv_NotifyThreadStart): Add JVMTI ThreadStart notification.
From-SVN: r120877
2007-01-17 22:05:10 +00:00
Gary Benson
8086b65daa
natVMDirectByteBufferImpl.cc: Renamed from java/nio/natDirectByteBufferImpl.cc.
...
2007-01-17 Gary Benson <gbenson@redhat.com>
* java/nio/natVMDirectByteBufferImpl.cc:
Renamed from java/nio/natDirectByteBufferImpl.cc.
* Makefile.am: Reflect the above.
* Makefile.in: Rebuilt.
From-SVN: r120859
2007-01-17 17:02:48 +00:00
Gary Benson
d8203cb888
MappedByteBuffer.java: Removed.
...
2007-01-15 Gary Benson <gbenson@redhat.com>
* java/nio/MappedByteBuffer.java: Removed.
* sources.am, Makefile.in: Rebuilt.
From-SVN: r120858
2007-01-17 16:25:10 +00:00
Tom Tromey
98685f2b44
natThread.cc (finalize_native): Remove cast.
...
* java/lang/natThread.cc (finalize_native): Remove cast.
(_Jv_GetCurrentJNIEnv): Likewise.
* include/jvm.h (struct natThread) <jni_env>: Declare as
_Jv_JNIEnv*.
From-SVN: r120844
2007-01-17 01:36:33 +00:00
Gary Benson
0122c9e791
MappedByteBuffer.java: Removed.
...
2007-01-15 Gary Benson <gbenson@redhat.com>
* java/nio/MappedByteBuffer.java: Removed.
* sources.am, Makefile.in: Rebuilt.
From-SVN: r120793
2007-01-15 12:45:35 +00:00
Gary Benson
a5c0f6fe87
URLClassLoader.java: Removed.
...
2007-01-15 Gary Benson <gbenson@redhat.com>
* java/net/URLClassLoader.java: Removed.
* gnu/java/net/loader/Load_gcjlib.java: New file.
* gnu/gcj/runtime/BootClassLoader.java: Ensure core
URL handler is present in static executables.
* sources.am, Makefile.in: Rebuilt.
From-SVN: r120791
2007-01-15 10:25:38 +00:00
Tom Tromey
ea517ca550
natDouble.cc (toString): Added parens.
...
* java/lang/natDouble.cc (toString): Added parens.
* gnu/gcj/io/shs.h (PROTO): Define.
* link.cc (resolve_pool_entry): Added missing braces.
From-SVN: r120652
2007-01-10 22:56:20 +00:00
Gary Benson
143f796e57
URL.java: Removed.
...
2007-01-10 Gary Benson <gbenson@redhat.com>
* java/net/URL.java: Removed.
* sources.am, Makefile.in: Rebuilt.
From-SVN: r120644
2007-01-10 16:55:10 +00:00
Tom Tromey
97b8365caf
Merged gcj-eclipse branch to trunk.
...
From-SVN: r120621
2007-01-09 19:58:05 +00:00
Gary Benson
7ddd83802b
Security.java: Merge with classpath.
...
2006-11-21 Gary Benson <gbenson@redhat.com>
* java/security/Security.java: Merge with classpath.
* java/lang/Package.java: Likewise.
* java/lang/Class.java (getDeclaredAnnotations): New method.
From-SVN: r119057
2006-11-21 16:18:08 +00:00
Gary Benson
adefdaca2d
InetAddress.java: Removed.
...
2006-11-03 Gary Benson <gbenson@redhat.com>
* java/net/InetAddress.java: Removed.
* java/net/natInetAddressNoNet.cc: Likewise.
* java/net/natInetAddressPosix.cc: Likewise.
* java/net/natInetAddressWin32.cc: Likewise.
* java/net/VMInetAddress.java (getLocalHostname,
lookupInaddrAny, getHostByAddr, getHostByName,
aton): Replace glue methods with native ones.
* java/net/natVMInetAddressNoNet.cc: New file.
* java/net/natVMInetAddressPosix.cc: Likewise.
* java/net/natVMInetAddressWin32.cc: Likewise.
* Makefile.am, configure.ac: Reflect the above.
* sources.am, Makefile.in, configure: Rebuilt.
* java/net/natVMNetworkInterfaceWin32.cc
(winsock2GetRealNetworkInterfaces): Create InetAddress
objects using InetAddress.getByAddress.
* gnu/java/net/natPlainSocketImplWin32.cc
(accept, getOption): Likewise.
* gnu/java/net/natPlainDatagramSocketImplWin32.cc
(peekData, receive, getOption): Likewise.
From-SVN: r118451
2006-11-03 10:16:04 +00:00
Keith Seitz
f356a436f0
java-stack.h (ncodeMap): Declare.
...
* include/java-stack.h (ncodeMap): Declare.
(_Jv_StackTrace): Make _Jv_GetMethodDeclaringClass friend.
* java/lang/Class.h (_Jv_GetMethodDeclaringClass): Declare.
* java/lang/natClass.cc (_Jv_GetMethodDeclaringClass): New
function.
* stacktrace.cc (ncodeMap): Redefine from file global to global
for class _Jv_StackTrace.
(_Jv_StackTrace::UpdateNCodeMap): Add interpreted classes, too,
so that _Jv_GetMethodDeclaringClass can find them all.
(_Jv_StackTrace::ClassForFrame): Exclude interpreted classes.
* jvmti.cc (_Jv_JVMTI_GetMethodDeclaringClass): New function.
(_Jv_JVMTI_Interface): Define GetMethodDeclaringClass function.
From-SVN: r118100
2006-10-28 02:15:12 +00:00
Tom Tromey
e7f7d23387
register2.java: New file.
...
* testsuite/libjava.jni/register2.java: New file.
* testsuite/libjava.jni/register2.out: New file.
* testsuite/libjava.jni/register2.c: New file.
* java/lang/natClass.cc (_Jv_GetClassNameUtf8): New function.
* java/lang/Class.h (_Jv_GetClassNameUtf8): Declare.
* jni.cc (struct NativeMethodCacheEntry): New struct.
(nathash): Changed type.
(hash): Updated.
(nathash_find_slot): Likewise.
(nathash_find): Likewise.
(natrehash): Likewise.
(nathash_add): Likewise.
(_Jv_JNI_RegisterNatives): Likewise.
(_Jv_LookupJNIMethod): Likewise.
Idea from Juerg Lehni <juerg@scratchdisk.com>
Co-Authored-By: Bryce McKinlay <mckinlay@redhat.com>
From-SVN: r117867
2006-10-18 23:17:04 +00:00
Gary Benson
704312e738
2006-10-03 Gary Benson <gbenson@redhat.com>
...
* java/net/InetAddress.java
(<clinit>): Reorder the static initializers.
From-SVN: r117394
2006-10-03 10:27:28 +00:00
Gary Benson
93a8f49bfa
2006-10-02 Gary Benson <gbenson@redhat.com>
...
* java/net/InetAddress.java
(checkConnect): Reinstated.
(loopbackAddress): Ensure initialized from non-null object.
From-SVN: r117370
2006-10-02 10:54:43 +00:00
Tom Tromey
d79d57fa02
Locale.java (hashcode): No longer transient.
...
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=201712
* java/util/Locale.java (hashcode): No longer transient.
(writeObject): Use ObjectOutputStream.PutField and
defaultWriteObject.
(readObject): Use defaultReadObject.
From-SVN: r117248
2006-09-27 07:58:11 +00:00
Gary Benson
aac8697859
InetAddress.java: Mostly merged with Classpath.
...
2006-09-20 Gary Benson <gbenson@redhat.com>
* java/net/InetAddress.java: Mostly merged with Classpath.
* java/net/VMInetAddress.java: New file.
* sources.am, Makefile.in: Rebuilt.
* java/net/natVMNetworkInterfacePosix.cc
(getInterfaces): Create InetAddress objects using
InetAddress.getByAddress.
* gnu/java/net/natPlainSocketImplPosix.cc
(accept, getOption): Likewise.
* gnu/java/net/natPlainDatagramSocketImplPosix.cc
(peekData, receive, getLocalAddress): Likewise.
From-SVN: r117075
2006-09-20 07:55:26 +00:00