Description[turbofan] Use range types to type and lower arithmetic ops.
This is based on Georg's work on typing arithmetic operations (https://codereview.chromium.org/658743002/).
Instead of weakening to bitset types, we weaken to the closest 2^n
limit if we see that we are re-typing a node with a range type (which
means that the node can be part of a cycle, so we might need
to speed up the fixpoint there).
BUG=
R=rossberg@chromium.org
Committed: https://code.google.com/p/v8/source/detail?r=24848
Patch Set 1 #Patch Set 2 : Include bitset Integral32 in the safe integer range #Patch Set 3 : Update simplified lowering tests #Patch Set 4 : Attempt at truncation #Patch Set 5 : Fix float32 constants #Patch Set 6 : Remove unused method #
Total comments: 29
Patch Set 7 : Address review comments #Patch Set 8 : Fixes and tweaks recommended by the reviewers #
Total comments: 2
Patch Set 9 : Inline Weaken #
Total comments: 1
Patch Set 10 : Rename MaybeWeaken and rebase #
Messages
Total messages: 15 (4 generated)
|