public inbox for java-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug java/20768] New: Bytecode -> native code doesn't handle exception properly
@ 2005-04-05 18:11 overholt at redhat dot com
  2005-04-05 18:12 ` [Bug java/20768] " overholt at redhat dot com
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: overholt at redhat dot com @ 2005-04-05 18:11 UTC (permalink / raw)
  To: java-prs

With the test case I will attach, I get different behaviour if I compile it
first to bytecode *with ecj* and then natively compile it versus interpreting
the bytecode (I have also tried going directly from source to native and that's
the same behaviour as interpreted).

The error does not happen with bytecode generated by gcj -C or Sun's javac.

To duplicate (note:  javac == ecj in case 1 and Sun's javac in case 2)

1.

javac TestExceptionBug.java
gcj -fPIC -fjni -findirect-dispatch --main=TestExceptionBug -o TestExceptionBug
*.class
gcj -fPIC -fjni -findirect-dispatch --main=TestExceptionBug -o
nativeTestExceptionBug TestExceptionBug.java
echo "==== interpreted ===="; gij TestExceptionBug
echo "==== native (from source) ===="; ./nativeTestExceptionBug
echo "==== native (from bytecode) ===="; ./TestExceptionBug

Output:
==== interpreted ====
Finally! It's happened to me -- Ce Ce Penniston
Hi
==== native (from source) ====
Finally! It's happened to me -- Ce Ce Penniston
Hi
==== native (from bytecode) ====
Finally! It's happened to me -- Ce Ce Penniston
Exception in thread "main" TestExceptionBug$IndexedStoreException
   at TestExceptionBug.getIndex(java.lang.String) (Unknown Source)
   at TestExceptionBug.getIndex() (Unknown Source)
   at TestExceptionBug.main(java.lang.String[]) (Unknown Source)
   at gnu.java.lang.MainThread.call_main() (/usr/lib/libgcj.so.6.0.0)
   at gnu.java.lang.MainThread.run() (/usr/lib/libgcj.so.6.0.0)

2.

javac TestExceptionBug.java
gcj -fPIC -fjni -findirect-dispatch --main=TestExceptionBug -o TestExceptionBug
*.class
gcj -fPIC -fjni -findirect-dispatch --main=TestExceptionBug -o
nativeTestExceptionBug TestExceptionBug.java
echo "==== interpreted ===="; gij TestExceptionBug
echo "==== native (from source) ===="; ./nativeTestExceptionBug
echo "==== native (from bytecode) ===="; ./TestExceptionBug

Output:
==== interpreted ====
Finally! It's happened to me -- Ce Ce Penniston
Hi
==== native (from source) ====
Finally! It's happened to me -- Ce Ce Penniston
Hi
==== native (from bytecode) ====
Finally! It's happened to me -- Ce Ce Penniston
Hi

$ gcj --version
gcj (GCC) 4.0.0 20050402 (Red Hat 4.0.0-0.39)

$ javac -version
Eclipse Java Compiler 0.537, pre-3.1.0 milestone-5, Copyright IBM Corp 2000,
2005. All rights reserved.

-- 
           Summary: Bytecode -> native code doesn't handle exception
                    properly
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: java
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: overholt at redhat dot com
                CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu
                    dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20768


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2005-04-28 16:53 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-04-05 18:11 [Bug java/20768] New: Bytecode -> native code doesn't handle exception properly overholt at redhat dot com
2005-04-05 18:12 ` [Bug java/20768] " overholt at redhat dot com
2005-04-05 18:20 ` overholt at redhat dot com
2005-04-05 18:41 ` mckinlay at redhat dot com
2005-04-05 20:15 ` tromey at gcc dot gnu dot org
2005-04-08  8:52 ` aph at gcc dot gnu dot org
2005-04-19 12:34 ` aph at gcc dot gnu dot org
2005-04-26 14:54 ` overholt at redhat dot com
2005-04-26 16:20 ` pinskia at gcc dot gnu dot org
2005-04-26 16:21 ` [Bug java/20768] [4.0 only] " pinskia at gcc dot gnu dot org
2005-04-28 16:35 ` cvs-commit at gcc dot gnu dot org
2005-04-28 16:53 ` pinskia at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).