Chromium Code Reviews
DescriptionFix convergence issues in range analysis.
Split it into three phases: initialization, widening and narrowing.
During widening and narrowing phi-ranges change according to classical widening and narrowing operators defined as:
Widening:
[_|_, _|_] v [a, b] = [a, b]
[a, b] v [c, d] = [c < a ? -inf : a, d > b ? +inf : b]
Narrowing:
[a, b] ^ [c, d] = [(a == -inf) ? c : min(a, c), (b == +inf) ? d : max(b, d)]
R=fschneider@google.com
Committed: https://code.google.com/p/dart/source/detail?r=12772
Patch Set 1 #
Total comments: 3
Patch Set 2 : address comments #
Messages
Total messages: 3 (0 generated)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||