You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Pavel Ozhdikhin (JIRA)" <ji...@apache.org> on 2007/09/06 10:54:31 UTC

[jira] Created: (HARMONY-4751) [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars

[drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars
-------------------------------------------------------------------------------------------

                 Key: HARMONY-4751
                 URL: https://issues.apache.org/jira/browse/HARMONY-4751
             Project: Harmony
          Issue Type: Bug
          Components: DRLVM
         Environment: IA32/EM64T platforms
            Reporter: Pavel Ozhdikhin


Branch translator may incorrectly remove branches depending on local vars. If a temporary operand in a branch condition originated from a local var and this local var is re-assigned before the branch condition but after creation of the temporary operand, than the new value of the var will be propagated to the branch condition. Thus the branch may be eliminated basing on a wrong value. Example:

t2 = v1
v1 = n
CMP t2, 0
JZ ...

In the example above value n may be used to eliminate the branch in the branch translator instead of the original v1 value.


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


[jira] Assigned: (HARMONY-4751) [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars

Posted by "Alexey Varlamov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexey Varlamov reassigned HARMONY-4751:
----------------------------------------

    Assignee: Alexey Varlamov

> [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars
> -------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4751
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4751
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: IA32/EM64T platforms
>            Reporter: Pavel Ozhdikhin
>            Assignee: Alexey Varlamov
>         Attachments: btr.patch, btr_regtest.patch
>
>
> Branch translator may incorrectly remove branches depending on local vars. If a temporary operand in a branch condition originated from a local var and this local var is re-assigned before the branch condition but after creation of the temporary operand, than the new value of the var will be propagated to the branch condition. Thus the branch may be eliminated basing on a wrong value. Example:
> t2 = v1
> v1 = n
> CMP t2, 0
> JZ ...
> In the example above value n may be used to eliminate the branch in the branch translator instead of the original v1 value.

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


[jira] Closed: (HARMONY-4751) [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars

Posted by "Alexey Varlamov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Alexey Varlamov closed HARMONY-4751.
------------------------------------

    Resolution: Fixed

Applied at revision: 573551 

> [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars
> -------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4751
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4751
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: IA32/EM64T platforms
>            Reporter: Pavel Ozhdikhin
>            Assignee: Alexey Varlamov
>         Attachments: btr.patch, btr_regtest.patch
>
>
> Branch translator may incorrectly remove branches depending on local vars. If a temporary operand in a branch condition originated from a local var and this local var is re-assigned before the branch condition but after creation of the temporary operand, than the new value of the var will be propagated to the branch condition. Thus the branch may be eliminated basing on a wrong value. Example:
> t2 = v1
> v1 = n
> CMP t2, 0
> JZ ...
> In the example above value n may be used to eliminate the branch in the branch translator instead of the original v1 value.

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


[jira] Updated: (HARMONY-4751) [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars

Posted by "Pavel Ozhdikhin (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Pavel Ozhdikhin updated HARMONY-4751:
-------------------------------------

    Attachment: btr_regtest.patch

The patch with regression test.

> [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars
> -------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4751
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4751
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: IA32/EM64T platforms
>            Reporter: Pavel Ozhdikhin
>         Attachments: btr.patch, btr_regtest.patch
>
>
> Branch translator may incorrectly remove branches depending on local vars. If a temporary operand in a branch condition originated from a local var and this local var is re-assigned before the branch condition but after creation of the temporary operand, than the new value of the var will be propagated to the branch condition. Thus the branch may be eliminated basing on a wrong value. Example:
> t2 = v1
> v1 = n
> CMP t2, 0
> JZ ...
> In the example above value n may be used to eliminate the branch in the branch translator instead of the original v1 value.

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


[jira] Updated: (HARMONY-4751) [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars

Posted by "Pavel Ozhdikhin (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Pavel Ozhdikhin updated HARMONY-4751:
-------------------------------------

    Patch Info: [Patch Available]

> [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars
> -------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4751
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4751
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: IA32/EM64T platforms
>            Reporter: Pavel Ozhdikhin
>         Attachments: btr.patch, btr_regtest.patch
>
>
> Branch translator may incorrectly remove branches depending on local vars. If a temporary operand in a branch condition originated from a local var and this local var is re-assigned before the branch condition but after creation of the temporary operand, than the new value of the var will be propagated to the branch condition. Thus the branch may be eliminated basing on a wrong value. Example:
> t2 = v1
> v1 = n
> CMP t2, 0
> JZ ...
> In the example above value n may be used to eliminate the branch in the branch translator instead of the original v1 value.

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


[jira] Updated: (HARMONY-4751) [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars

Posted by "Pavel Ozhdikhin (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Pavel Ozhdikhin updated HARMONY-4751:
-------------------------------------

    Attachment: btr.patch

The fix. Passed 'build test' and 'build reg.test' on Win32.
Also includes a minor update to the Jitrino project file.


> [drlvm][jit][opt] branch translator may incorrectly remove branches depending on local vars
> -------------------------------------------------------------------------------------------
>
>                 Key: HARMONY-4751
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4751
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: IA32/EM64T platforms
>            Reporter: Pavel Ozhdikhin
>         Attachments: btr.patch
>
>
> Branch translator may incorrectly remove branches depending on local vars. If a temporary operand in a branch condition originated from a local var and this local var is re-assigned before the branch condition but after creation of the temporary operand, than the new value of the var will be propagated to the branch condition. Thus the branch may be eliminated basing on a wrong value. Example:
> t2 = v1
> v1 = n
> CMP t2, 0
> JZ ...
> In the example above value n may be used to eliminate the branch in the branch translator instead of the original v1 value.

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