This is the mail archive of the java-patches@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Line number support for interpreter


Hi,

On Mon, 2004-05-17 at 21:05, Tom Tromey wrote:
> >>>>> "Mark" == Mark Wielaard <mark@klomp.org> writes:
> 
> Mark> I tested it some more and it doesn't give regressions (and as mentioned
> Mark> above eclipse 2.1.2 runs with this). But I haven't checked against Mauve
> Mark> yet. And I found at least one example which breaks with this code. I
> Mark> made the attached Invoke.java test (using reflection to call an
> Mark> interface method on an object that implements that interface).
> Mark> I cannot figure out what I changed that causes this to fail with my
> Mark> patch. Anyone a clue?
> 
> What gcj did you use?  Some versions have a bug in this situation.

CVS head with that patch applied.

> Can you send the stack trace?

(gdb) run Invoke
Starting program: /usr/local/gcc35/bin/gij Invoke
[Thread debugging using libthread_db enabled]
[New Thread 16384 (LWP 25824)]
[New Thread 32769 (LWP 25826)]
[New Thread 16386 (LWP 25827)]
Invoking...
 
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 25824)]
0x00000000 in ?? ()
(gdb) bt
#0  0x00000000 in ?? ()
#1  0x4069592b in ffi_call_SYSV () at ../../../gcc/libffi/src/x86/sysv.S:60
#2  0x406955e0 in ffi_call (cif=Variable "cif" is not available.
) at ../../../gcc/libffi/src/x86/ffi.c:221
#3  0x404d303a in _Jv_CallAnyMethodA (obj=0x80b5f48, return_type=Variable "return_type" is not available.
)
    at ../../../gcc/libjava/java/lang/reflect/natMethod.cc:497
#4  0x404d3523 in _Jv_CallAnyMethodA (obj=0xbffff0c0, return_type=0x409bdf78,
    meth=0x80e5348, is_constructor=Variable "is_constructor" is not available.
)
    at ../../../gcc/libjava/java/lang/reflect/natMethod.cc:629
#5  0x404d39dc in java::lang::reflect::Method::invoke (this=Variable "this" is not available.
)
    at ../../../gcc/libjava/java/lang/reflect/natMethod.cc:194
#6  0x4069592b in ffi_call_SYSV () at ../../../gcc/libffi/src/x86/sysv.S:60
#7  0x406958f0 in ffi_raw_call (cif=Variable "cif" is not available.
) at ../../../gcc/libffi/src/x86/ffi.c:537
#8  0x404b72e8 in _Jv_InterpMethod::run (this=0x80bda10, retp=0xbffff8a0, args=Variable "args" is not available.
 
) at ../../../gcc/libjava/interpret.cc:1144
#9  0x404b63e8 in _Jv_InterpMethod::run_class (ret=0xbffff0c0,
    args=0xbffff0c0, __this=Variable "__this" is not available.
) at ../../../gcc/libjava/interpret.cc:250
#10 0x4069578a in ffi_closure_raw_SYSV (closure=Variable "closure" is not available.
)
    at ../../../gcc/libffi/src/x86/ffi.c:416
#11 0x404be615 in gnu::gcj::runtime::FirstThread::call_main (this=Variable "this" is not available.
)
    at ../../../gcc/libjava/gnu/gcj/runtime/natFirstThread.cc:47
#12 0x4054d822 in gnu.gcj.runtime.FirstThread.run() (this=Variable "this" is not available.
)
    at ../../../gcc/libjava/gnu/gcj/runtime/FirstThread.java:54
#13 0x404cf85b in _Jv_ThreadRun (thread=Variable "thread" is not available.
)
    at ../../../gcc/libjava/java/lang/natThread.cc:284
#14 0x404a49b6 in _Jv_RunMain (klass=0x0, name=0xbffffb64 "Invoke", argc=Variable "argc" is not available.
)
    at ../../../gcc/libjava/prims.cc:1064
#15 0x08048870 in main (argc=2, argv=0xbffffa44)
    at ../../../gcc/libjava/gij.cc:166

>   Does it fail if you compile the test
> to native?

No:

$ ./invoke
Invoking...
Hello World
...Invoked

Any clue why my patch might cause this?

Cheers,

Mark

Attachment: signature.asc
Description: This is a digitally signed message part


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]