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