harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dmitry Pronichkin (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-5123) [drlvm][jitrino] peephole optimizations
Date Wed, 14 Nov 2007 11:32:43 GMT
[drlvm][jitrino] peephole optimizations

                 Key: HARMONY-5123
                 URL: https://issues.apache.org/jira/browse/HARMONY-5123
             Project: Harmony
          Issue Type: Improvement
          Components: DRLVM
         Environment: IA32
            Reporter: Dmitry Pronichkin
         Attachments: peephole.patch

The following optimizations are added to peephole pass:
1. AND -> TEST replacing if result is not used further;

2. { MOV x, y
      MOV z, x };
pattern replacing with { MOV z, y } if x is not used further;
3. { MOV x, 0
       SETcc x
       MOV y, x }
pattern replacing with { MOV y, 0
                                          SETcc y } if x is not used further;
4. { MOV x, 0/1
       CMP x, 0
       Jcc ..}
pattern replacing with { JMP .. } (jump in the right direction);
5. { MOV x, 0
       SETcc1 x
       CMP x, 0 (TEST x, x)
       Jcc2 .. }
pattern replacing with { Jcc3 ..} (possibly saving the CMP-Jcc block).

Also there is a suggestion to carry "code layout" pass after the "peephole" pass, because
peephole may need to make graph transformations, which need adding changes to code layout.

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

View raw message