You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Alexey Varlamov (JIRA)" <ji...@apache.org> on 2007/06/04 14:14:36 UTC
[jira] Resolved: (HARMONY-1788) [drlvm][jit][abcd] Inequality graph
generation from HIR
[ https://issues.apache.org/jira/browse/HARMONY-1788?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alexey Varlamov resolved HARMONY-1788.
--------------------------------------
Resolution: Fixed
Integrated full_abcd_updated_20070604_1.patch and regression_tests_1788.diff at revision: 544138.
> [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
> Assignee: Alexey Varlamov
> Attachments: abcd_update_1.patch, abcd_update_1_full.patch, assert_logs.zip, enable-inequality-graph-building.patch.txt, full_abcd_20070531.patch, full_abcd_updated_20070425.diff, full_abcd_updated_20070503.patch, full_abcd_updated_20070604.patch, full_abcd_updated_20070604_1.patch, regression_tests_1788.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.