haikuwebkit/LayoutTests/js/dfg-sqrt-backwards-propagat...

210 lines
9.7 KiB
Plaintext

Tests that the DFG knows that a function that appears like Math.sqrt could potentially use value in arbitrary ways, and not just in a context that converts values to numbers.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(bar, [, 1.5], 0) is void 0
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS foo(Math.sqrt, [1.5], 0) is Math.sqrt(1.5)
PASS successfullyParsed is true
TEST COMPLETE