harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Naveen Neelakantam <neela...@uiuc.edu>
Subject Re: [drlvm][jit] possible ABCD bug
Date Tue, 03 Oct 2006 03:39:41 GMT
Hello Egor,

I finally got a chance to read through your code.  It is well  
designed, and correct (as far as I can tell).  I especially like the  
way that the upper bounds solver works as the lower bounds solver  
simply by flipping a flag (and both operate on the same inequality  
graph).  Very nice!

I made some changes that you might be interested in, which I've  
uploaded in the form of a patch.  They are (in the order they appear  
in the patch file):

1) In updateMemDistanceWithPredecessors, it should not be possible  
for the dest operand to have a usable memoized value.  This is simply  
because if it did, updateMemDistanceWithPredecessors would not have  
been called.  I therefore replaced some code with an assert.
2) Also in updateMemDistanceWithPredecessors, I added an  
optimization.  Essentially, we can take advantage of ProveResult  
being a lattice (i.e. is monotonic) to prevent some recursive proofs.
3) I fixed a small error in testDoubleCycleGraph().
4) Fixed a gcc 4.1.1 syntax error in the header.

Once again, your code is very good.  It is also nice that it matches  
the algorithm outlined in the ABCD paper wherever possible.

Is there something else I can do to help?


On Sep 26, 2006, at 3:50 AM, Egor Pasko wrote:

> On the 0x1EF day of Apache Harmony Naveen Neelakantam wrote:
> Naveen, I am glad to see someone interested in ABCD. Hope for
> collaboration and a lot of fun with the code :)
> I attached my solver to HARMONY-1564 (oops, sorry for .tar.gz, I am so
> used to it:) It is just the implementation of the solver with a number
> of tests to play with. Though, it depends on Log.h, Stl.h and types.h
> and is better placed in working_vm/vm/jitrino/src/optimizer/abcd as I
> expected to place it.
> To make it real need to create InequalityGraph from HIR, that's what I
> started to do already. Not finished, unfortunately. I will publish the
> sketches if you are eager to see them ASAP. I guess, it will take some
> time for you to play with the solver, though :)
> Plz, do not hesitate to ask any question on the code. I pretend that
> it should be a more easy read than the present implementation. So, I
> would appreciate any comments.
> It makes sense to make a separate JIRA for our ABCD
> improvements. That's a TODO.

Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org

View raw message