harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mikhail Fursov (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-4667) [drlvm][jit][jet][x86-64] Missed exception in the JET on x86_64.
Date Wed, 17 Oct 2007 11:06:50 GMT

     [ https://issues.apache.org/jira/browse/HARMONY-4667?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Mikhail Fursov updated HARMONY-4667:
------------------------------------

    Attachment: fix.diff

The problem source is:

1) Old non-lazy code uses resolve_virtual method instead of resolve_special for invokespecial
methods

2) Lazy-resolution mode is not enabled for EM64T platform today by default. So this is the
bug can be reproduced only on this platform but not on IA32. To reproduce this bug on IA32
platform you need to turn lazy resolution off: -XX:jit.arg.lazyResolution=off

The patch fixes the problem in our old, non-lazy mode. However I think we need to switch to
lazy-resolution mode on EM64T platform as soon as possible.

> [drlvm][jit][jet][x86-64] Missed exception in the JET on x86_64.
> ----------------------------------------------------------------
>
>                 Key: HARMONY-4667
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4667
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Pavel Afremov
>            Assignee: Mikhail Fursov
>         Attachments: fix.diff, test.java, test_2a.java, test_2b.java
>
>
> On x86-64 platform test failed in default and jet mode. Interpreter and Opt work OK.
> Looks Like bug is in the Jet.
> To reproduce the bug copy test.java, test_2a.java & test_2b.java to you test directory.
> Compile  test_2a.java, then test.java and after it test_2b.java, like in example:
> 	$ javac test_2a.java
> 	$ javac test.java
> 	$ javac test_2b.java
> Outputs are following:
> 1. RI:
> 	$ java test
> 	PASSED Exception was thrown: java.lang.NoSuchMethodError: <init>
> 2. DRLVM default
> 	$ ./drlvm/build/lnx_em64t_gcc_debug/deploy/jdk/jre/bin/java test
> 	FAILED No exception was thrown
> 3. DRLVM interpreter
> 	$ ./drlvm/build/lnx_em64t_gcc_debug/deploy/jdk/jre/bin/java -Xint test
> 	PASSED Exception was thrown: java.lang.NoSuchMethodError: <init>
> 4. DRLVM jet
> 	$ ./drlvm/build/lnx_em64t_gcc_debug/deploy/jdk/jre/bin/java -Xem:jet test
> 	FAILED No exception was thrown
> 5. DRLVM opt
> 	$ ./drlvm/build/lnx_em64t_gcc_debug/deploy/jdk/jre/bin/java -Xem:opt test
> 	PASSED Exception was thrown: java.lang.NoSuchMethodError: <init>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message