harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gregory Shimansky (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-5078) [drlvm][jni] a stress test org.apache.harmony.test.stress.jni.arguments.ArgumentsTest fails
Date Thu, 13 Dec 2007 13:31:44 GMT

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

Gregory Shimansky updated HARMONY-5078:

    Attachment: Test.c

I found the cause of the bug. According to the spec, first 8 floating point arguments to a
function are passed in xmm0 - xmm7 registers. LIL stub loads values from the memory to xmm0
- xmm7 registers for the 1st 8 arguments. But if the number of floating point arguments is
more than 8, then LIL stub uses xmm0 as a temporary register to load values from memory and
write them to the stack as arguments for native method. Therefore the value for the 1st floating
point argument is overwritten in xmm0 by the last floating point argument. Attached test demonstrates
this behavior. Bug is in LIL for x86_64.

> [drlvm][jni] a stress test org.apache.harmony.test.stress.jni.arguments.ArgumentsTest
> -------------------------------------------------------------------------------------------
>                 Key: HARMONY-5078
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5078
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: Linux x86-64
>            Reporter: Alexei Fedotov
>         Attachments: Test.c, Test.java
> The stress test fails while passing arguments to the native function.

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

View raw message