You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Ivashin Sergey (JIRA)" <ji...@apache.org> on 2006/12/20 13:50:25 UTC

[jira] Updated: (HARMONY-2816) [drlvm][jit] Jitrino operand priority calculation in bin pack register allocator

     [ http://issues.apache.org/jira/browse/HARMONY-2816?page=all ]

Ivashin Sergey updated HARMONY-2816:
------------------------------------

    Attachment: H-2816.patch

This patch solves the problem described (also it contains minor source code cleanup).
The patch was tested on Windows and Linux.

> [drlvm][jit] Jitrino operand priority calculation in bin pack register allocator
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-2816
>                 URL: http://issues.apache.org/jira/browse/HARMONY-2816
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>            Reporter: Ivashin Sergey
>         Attachments: H-2816.patch
>
>
> Calculation of operand's priority for register assignment is based on execution counters and register pressures for all blocks where the operand is used. Block execution counter is a float (double) value, but currently result of this calculation is truncated to integer value. This truncation causes (1) errors in estimating priorities of operands and (2) different allocation results for different compilers used (run-time routines from ICL and MSVC produce different floating point results).
> Using floating point values for operand priorities (weight calculation) significantly reduce numeric instability and help reproduce allocation results for different compilers. It should not have a negative impact on performance, because double to integer truncation is removed.

-- 
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