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-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-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 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: r122483
2007-03-02 Andrew Haley <aph@redhat.com>
* sun/reflect/annotation/AnnotationInvocationHandler.java:
Whitespace only changes.
2007-03-02 Andrew Haley <aph@redhat.com>
* sun/reflect/annotation/AnnotationInvocationHandler.java: Moved
from Classpath to libgcj local.
From-SVN: r122471
2007-03-02 Andrew Haley <aph@redhat.com>
* sun/reflect/annotation/AnnotationInvocationHandler.java: Moved
from Classpath to libgcj local.
From-SVN: r122470
2007-02-22 Jakub Jelinek <jakub@redhat.com>
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.
From-SVN: r122258
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
(get_line_table): New function.
(handle_single_step): New function.
(jdwpSingleStepCB): New function.
(jdwpVMInitCB): Define a JVMTI single step
callback, but don't enable it until needed.
From-SVN: r122065
2006-10-14 Edwin Steiner <edwin.steiner@gmx.net>
PR classpath/28652:
* javax/management/MBeanInfo.java (MBeanInfo):
Use clone to duplicate the arrays in order to
preserve the array type.
From-SVN: r122050
2007-02-16 Kyle Galloway <kgallowa@redhat.com>
* interpret.cc: Add extra DEBUG_LOCALS_INSN calls for multi-slot
variables to maintain type info.
* interpret-run.cc: Add local variable info to frame in the debug
interpreter.
* jvmti.cc (getLocalFrame): New method.
(_Jv_JVMTI_GetLocalObject): New method.
(_Jv_JVMTI_GetLocallInt): New method.
(_Jv_JVMTI_GetLocalFloat): New method.
(_Jv_JVMTI_GetLocalLong): New method.
(_Jv_JVMTI_GetLocalDouble): New method.
(_Jv_JVMTI_SetLocalObject): New method.
(_Jv_JVMTI_SetLocalInt): New method.
(_Jv_JVMTI_SetLocalFloat): New method.
(_Jv_JVMTI_SetLocalLong): New method.
(_Jv_JVMTI_SetLocalDouble): New method.
From-SVN: r122048
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-15 Kyle Galloway <kgallowa@redhat.com>
* defineclass.cc (_Jv_ClassReader::read_one_code_attribute):
Added LocalVariableTable attribute handling.
(_Jv_ClassReader::pool_Utf8_to_char_arr): New method.
* jvmti.cc (_Jv_JVMTI_GetLocalVariableTable): New method.
* include/java-interp.h: Added local_var_table and
local_var_table_len fields to _Jv_InterpMethod.
(_Jv_InterpMethod::get_local_var_table): New method.
* testsuite/libjava.jvmti/interp/getlocalvartable.java: New
test.
* testsuite/libjava.jvmti/interp/getlocalvartable.jar: New test.
* testsuite/libjava.jvmti/interp/getlocalvartable.out: Output
for new test.
* testsuite/libjava.jvmti/interp/getlocalvartable.h: New test.
* testsuite/libjava.jvmti/interp/natgetlocalvartable.cc: New
test.
From-SVN: r121999
* gnu/javax/management/Server.java
(registerMBean): Always register objects that implement the
MBeanRegistration interface, and check the name returned by
preRegister before using it.
From-SVN: r121995
* jvmti.cc (_Jv_JVMTI_GetStackTrace): Remove cast
from jthread to Thread *; it is no longer needed.
(_Jv_JVMTI_GetFrameCount): Likewise.
Fix small formatting typo.
From-SVN: r121878
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
PR 23566
* scripts/timezones.pl: Parse each file in 2 passes, in one parse
just Rule lines, in the other everything else. Pass 0 instead of
$savings as second argument to parseRule when parsing the start
rule.
* java/util/TimeZone.java (timezones): Regenerate from tzdata2007a.
From-SVN: r121740
2007-02-06 Kyle Galloway <kgallowa@redhat.com>
* include/java-interp.h (_Jv_InterpFrame): obj_ptr field added
to hold "this" pointer for frame.
(_Jv_InterpFrame::get_this_ptr): New method.
* interpret-run.cc: Copy the "this" pointer into obj_ptr.
From-SVN: r121717
* testsuite/libjava.jni/init.c: New file.
* testsuite/libjava.jni/init.java: New file.
* testsuite/libjava.jni/init.out: New file.
* testsuite/libjava.jni/init.jar: New file.
* testsuite/libjava.jni/init.h: New file.
* testsuite/libjava.jni/init$NativeClass.h: New file.
From-SVN: r121698
2007-02-07 Chris Burdess <dog@gnu.org>
Fixes PR 30718.
* gnu/xml/dom/ls/SAXEventSink.java: Add public accessor/mutators.
* gnu/xml/transform/XSLURIResolver.java: Add support for custom
SAXSources without a backing URL or stream.
Fixes PR 27710.
* gnu/xml/dom/DomDocumentBuilderFactory.java: Fall back to synchronous
LSParser if implementation does not support asynchronous.
* gnu/xml/stream/XMLParser.java,
gnu/xml/stream/XIncludeFilter.java: Use custom code instead of
java.net.URL to resolve to an an absolute URI, to avoid nonexistent
protocol handler problems.
From-SVN: r121694
* configure.ac (libjava_cv_anon_version_script): New test.
(ANONVERSCRIPT): New AM_CONDITIONAL.
* configure: Rebuilt.
* Makefile.am (extra_ldflags_libjava): Link with -Wl,--version-script
if ANONVERSCRIPT.
* Makefile.in: Rebuilt.
(libgcj_la_DEPENDENCIES): Depend on libgcj.ver.
* libgcj.ver: New file.
From-SVN: r121499
* scripts/makemake.tcl: Replace gnu/xml build with build of all
its subpackages.
* sources.am: Regenerate.
* Makefile.in: Regenerate.
From-SVN: r121483
* include/jvmti-int.h (JVMTI): Declare member "enabled".
* jvmti.cc (JVMTI): Add member "enabled".
(_Jv_GetJVMTIEnv): Mark JVMTI enabled.
* interpret.cc (_Jv_InterpMethod::ncode): Use JVMTI::enabled
instead of gnu::classpath::jdwp::Jdwp::isDebugging.
(_Jv_CompileMethod): If JVMTI is enabled, use run_debug
instead of run to compile the method.
* interpret-run.cc [DEBUG] (NEXT_INSN): Add JVMTI single step
notification.
From-SVN: r121468
* include/jvmti-int.h (JVMTI): Declare member "enabled".
* jvmti.cc (JVMTI): Add member "enabled".
(_Jv_GetJVMTIEnv): Mark JVMTI enabled.
* interpret.cc (_Jv_InterpMethod::ncode): Use JVMTI::enabled
instead of gnu::classpath::jdwp::Jdwp::isDebugging.
(_Jv_CompileMethod): If JVMTI is enabled, use run_debug
instead of run to compile the method.
* interpret-run.cc [DEBUG] (NEXT_INSN): Add JVMTI single step
notification.
From-SVN: r121442
2007-01-31 Andreas Tobler <a.tobler@schweiz.org>
* testsuite/libjava.jvmti/jvmti-interp.exp (gij_jvmti_test_one): Add
-shared-libgcc to the cxxflaglist for Darwin.
From-SVN: r121438
* scripts.am, Makefile.in: Rebuilt.
* scripts/makemake.tcl (gnu/javax/swing/text/html/parser): Build
as 'ordinary'.
(emit_ordinary_rule): New proc.
From-SVN: r121437
(Main.Stdin): New message.
* tools/gnu/classpath/tools/jar/Main.java (initializeParser): Add
'-@' option.
(readNames): New method.
(run): Use it.
From-SVN: r121424
2007-01-30 Andreas Tobler <a.tobler@schweiz.org>
* testsuite/libjava.jvmti/natevents.cc (FieldModificationCB): Use a
cast to print it right.
From-SVN: r121362
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
* configure, Makefile.in: Rebuilt.
* Makefile.am (bin_SCRIPTS): Never install scripts/jar.
* configure.ac (BASH_JAR): Removed conditional.
(JAR): Prefer the jar found by AC_CHECK_PROGS.
From-SVN: r121301