harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavel Ozhdikhin (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-1788) [drlvm][jit][abcd] Inequality graph generation from HIR
Date Wed, 25 Apr 2007 14:05:15 GMT

     [ https://issues.apache.org/jira/browse/HARMONY-1788?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Pavel Ozhdikhin updated HARMONY-1788:
-------------------------------------

    Attachment: full_abcd_updated_20070425.diff

The full patch from Naveen is updated against current SVN state. Also updated emconf files
and MSVC project files, compilation error on MS .NET 2003 is fixed.

Hoewer, the smoke test stress.Stack files with this patch on Windows/IA32 debug build (-Xem:server
mode) with the following assertion:

Assertion failed: dst && src, file \users\pozhdikh\harmony\trunk\working_vm\vm\jitrino\src\optimizer\abcd\classic_abcd.cpp,
line 283


> [drlvm][jit][abcd] Inequality graph generation from HIR
> -------------------------------------------------------
>
>                 Key: HARMONY-1788
>                 URL: https://issues.apache.org/jira/browse/HARMONY-1788
>             Project: Harmony
>          Issue Type: New Feature
>          Components: DRLVM
>         Environment: all
>            Reporter: Egor Pasko
>         Attachments: abcd_update_1.patch, abcd_update_1_full.patch, enable-inequality-graph-building.patch.txt,
full_abcd_updated_20070425.diff, 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.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message