You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Egor Pasko (JIRA)" <ji...@apache.org> on 2006/11/07 07:46:51 UTC

[jira] Commented: (HARMONY-2061) [drlvm][ipf] new node merging algorithm

    [ http://issues.apache.org/jira/browse/HARMONY-2061?page=comments#action_12447689 ] 
            
Egor Pasko commented on HARMONY-2061:
-------------------------------------

Changes do *not* affect the IA-32 build. Which is great! (I verified this)

I am slightly unhappy with changes like:

------------------------------------------------------------
+++ include/IpfCodeLayouter.h   (working copy)
@@ -17,7 +17,7 @@

 /**
  * @author Intel, Konstantin M. Anisimov, Igor V. Chebykin
- * @version $Revision$
+ * @version $Revision: 1.1.1.6 $
  *
  */
------------------------------------------------------------

is it easy to overcome them? maybe, remove the $Revision$ keyword at all? too CVS-ish, not for today

Why do you use 'map' instead of more commonly used StlMap (MemoryManager based)?
For the sake of safety to memory leakage we use memory managers (and allocate them on stack).
I understand that your map is allocated on stack, and, hence induces no memory leakage,
but it is not like the common style we use. Someone can allocate the map in heap by mistake.
Could you, please, make it an StlMap?

I see some bugfixes. Cool :)

here:
------------------------------------------------------------
@@ -436,7 +538,8 @@
     // Add branch to through edge target
     Opnd    *p0         = cfg.getOpndManager()->getP0();
     NodeRef *targetNode = cfg.getOpndManager()->newNodeRef(target);
-    node->addInst(new(mm) Inst(INST_BR, CMPLT_BTYPE_COND, p0, targetNode));
+//    node->addInst(new(mm) Inst(mm, INST_BR, CMPLT_BTYPE_COND, CMPLT_WH_SPTK, p0, targetNode));
+    node->addInst(new(mm) Inst(mm, INST_BR, CMPLT_WH_SPTK, CMPLT_PH_FEW, p0, targetNode));
------------------------------------------------------------

does it make sense to leave this line commented-out? Please, remove it completely.

Minor suggestion: please, provide patches for the "working_vm" directory, or one level above, 
otherwise it needs an extra guess where to apply it (this time it is vm/jitrino/src/codegenerator/ipf)

RegOpnd constructor signature changed, but no changes followed in the implementation
(IpfOpnd.cpp). You probably forgot to include the file into the diff. Please,
update.


> [drlvm][ipf] new node merging algorithm
> ---------------------------------------
>
>                 Key: HARMONY-2061
>                 URL: http://issues.apache.org/jira/browse/HARMONY-2061
>             Project: Harmony
>          Issue Type: Improvement
>          Components: DRLVM
>         Environment: SUSE 9, IPF
>            Reporter: Konstantin Anisimov
>         Attachments: node_merging_ipf.txt
>
>
> IpfCodeLayouter.cpp, IpfCodeLayouter.h
>   New algorith which moves predicated direct calls in separate node.
>   More effective node merging algorithm. Besides, it purges empty nodes and removes unused unwind 
>   nodes.
> IpfCfg.cpp, IpfCfg.h
>   Minor changes in code layouting support
> IpfCfgVerifier.cpp, IpfCfgVerifier.h
>   Verifier is eliminated. We need new one.
> IpfCodeSelector.cpp, IpfCodeSelector.h
>   New VM support. We use the VM for development needs.
> IpfCodeGenerator.cpp
>   Minor changes in using log system
>   
>   
>   

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