I have a general remark about the approach in this CL: If I read the patch
correctly, we lose a lot of information when we convert the BitRange back to a Range. This happens e.g. when several bitops are chained, which is probably not
an uncommon pattern.

I think the right approach would be that the computed range contains both
extreme values *and* the known bits/bit values, so the necessary information can
be carried between several operations. Note that memory consumption for the
additional fields could be a problem, but we'll have to measure that instead of
doing wild guesses.

A related, but separate problem would be a better handling of loops in the range
analysis, which we should probably handle first to see the real impact of a
better per-instruction range analysis.

So in a nutshell: I like the general idea of the CL, but it things should
probably be done in a different place.

http://codereview.chromium.org/9156001/

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to