harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Egor Pasko (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-1788) [drlvm][jit][abcd] Inequality graph generation from HIR
Date Mon, 09 Oct 2006 16:44:20 GMT
    [ http://issues.apache.org/jira/browse/HARMONY-1788?page=comments#action_12440923 ] 
            
Egor Pasko commented on HARMONY-1788:
-------------------------------------

It is useful for development, and I wanted to share it as a usage example.
a) it is not necessary to commit this file, I do not insist
b) I see no danger in an extra .emconf. Besides, there are a lot of switched in JIT, and not
all of them are correct, some switches are useful for further development and performance
estimations. And it is not dangerous. Users running DRLVM with "unsupported" switches triggered
should know what they are doing. 

> [drlvm][jit][abcd] Inequality graph generation from HIR
> -------------------------------------------------------
>
>                 Key: HARMONY-1788
>                 URL: http://issues.apache.org/jira/browse/HARMONY-1788
>             Project: Harmony
>          Issue Type: New Feature
>          Components: DRLVM
>         Environment: all
>            Reporter: Egor Pasko
>         Attachments: enable-inequality-graph-building.patch.txt, vm.zip
>
>
> new files [vm.zip]:
> vm/jitrino/src/optimizer/abcd/AbcdFlags.h
> vm/jitrino/src/optimizer/abcd/insertpi.cpp
> vm/jitrino/src/optimizer/abcd/classic_abcd.h
> vm/jitrino/src/optimizer/abcd/insertpi.h
> vm/jitrino/src/optimizer/abcd/classic_abcd.cpp
> vm/jitrino/config/ia32/abcd_static.emconf
> This issue depends on HARMONY-1564.
> Features:
> * new optimization pass added (classic_abcd), off by default
> * old optimization pass (abcd) is preserved to work with no change
>   (with bug fixed by Naveen in HARMONY-1564)
>   the fix should NOT visibly affect anyone (!!!)
> * new EM config file for easier ABCD development (abcd_static.emconf)
>   (use java -Xem:abcd_static Hello)
> * Pi instructions are now inserted by the separate class (InsertPi)
>   that is reused between both old and new ABCD algorithms
> * Inequality graph can be printed to a .dot file on request.
>   Do it like this for method "main":
>   java -Xem:abcd_static -Djit.p.filter=.main -Djit.p.arg.log=ct,irdump,dotdump
>   and find inequality.graph.dot
>   ("dot -Tpng inequality.graph.dot > viewme.png")
> * checked on gcc 3.3.3 Linux/ia32
> * HelloWorld passed in the new mode, does not affect other modes
> * against r454400
> Instructions on how to apply both contributions. 
> Suppose you have all files in working_vm/abcd_update:
> abcd.patch           (Naveen, HARMONY-1564)
> abcd-original.tar.gz (Egor, HARMONY-1564)
> naveen_2.patch       (Naveen, HARMONY-1564)
> enable-inequality-graph-building.patch.txt
> vm.zip
> $ cd working_vm
> $ patch -p0 <abcd_update/abcd.patch
> $ tar zxvf abcd_update/abcd-original.tar.gz
> $ patch -p0 <../abcd_update/naveen_2.patch
> $ mv * ../vm/jitrino/src/optimizer/abcd/
> $ cd ..
> $ rm -rf abcd-original/
> $ unzip abcd_update/vm.zip
> $ patch -p1 <abcd_update/enable-inequality-graph-building.patch.txt
> What is left to do for the new ABCD:
> * teach the optimization to invoke the solver 
>   (detect array lengths, bounds checking operands)
> * acquire not-a-small amount of tests
> * fix bugs :)
> * improve the algorithm supporting semantics of more more operations 
>   such as Op_Conv, etc.

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