harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nikolay Sidelnikov (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-2726) [drlvm][jit][opt]Bitwise double and float notion works incorrectly
Date Fri, 15 Dec 2006 07:07:22 GMT
    [ http://issues.apache.org/jira/browse/HARMONY-2726?page=comments#action_12458712 ] 
            
Nikolay Sidelnikov commented on HARMONY-2726:
---------------------------------------------

The problem is in handling denormalized exceptions. Jitrino generates instruction

addsd       xmm1,xmm7

and both xmm1 and xmm7 contain denormalized number 4.9E-324. But the result is
zero. Somehow a flag is set not to generate any floating point exceptions in
MXCSR, so denormalized operand exception is not generated. Possibly this is an
Intel compiler optimization. The flag (bit 6 in MXCSR) is set when Jitrino DLL is opened.
I believe it happens somewhere in DllMain of jitrino.dll or somewhere in its DLL
initialization code where Intel compiler enables fast floating point mode with
denormalized numbers, so no denormal exception occures. Probably we need to
compile jitrino.dll with /Op flag so that this bit is not set.


> [drlvm][jit][opt]Bitwise double and float notion works incorrectly
> ------------------------------------------------------------------
>
>                 Key: HARMONY-2726
>                 URL: http://issues.apache.org/jira/browse/HARMONY-2726
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Nikolay Sidelnikov
>            Priority: Minor
>         Attachments: test.java
>
>
> double and float arithmetic instructions (dadd, dsub, dneg, ddiv, dmul, fadd, 
> fsub, fneg, fdiv, fmul) return incorrect results when icl compiler is used.
> It is occurs when double and float parameters were created from long and 
> integer values respectively using Double.longBitsToDouble(long) and 
> Float.intBitsToFloat(int) methods.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message