Dead-code elimination during representation selection is too aggressive |
||
Issue description
The following simple snippet illustrates the issue:
function foo(x) { return x < x; }
foo(1);
foo(2);
function bar(x) { foo(x); }
%OptimizeFunctionOnNextCall(bar);
assertThrows(() => bar(Symbol.toPrimitive));
We do eliminate the SpeculativeNumberLessThan node in this case, because it has no value uses once foo is inlined into bar. However, that way we also kill the input check on x, and thus do not raise an exception for the symbol input.
,
Jul 26 2016
|
||
►
Sign in to add a comment |
||
Comment 1 by bugdroid1@chromium.org
, Jul 26 2016