Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
michael@0 | 1 | // Normal checks: |
michael@0 | 2 | function mul(x, y) { |
michael@0 | 3 | return x*y; |
michael@0 | 4 | } |
michael@0 | 5 | assertEq(mul(1, 2), 2); |
michael@0 | 6 | assertEq(mul(0, 2), 0); |
michael@0 | 7 | assertEq(mul(0, -1), -0); |
michael@0 | 8 | assertEq(mul(100000000, 20000), 2000000000000); |
michael@0 | 9 | assertEq(mul(0, -2), -0); |
michael@0 | 10 | assertEq(mul(0, 0), 0); |
michael@0 | 11 | |
michael@0 | 12 | // Constant * value checks: |
michael@0 | 13 | assertEq(function(x){return x*1}(4), 4); |
michael@0 | 14 | assertEq(function(x){return x*1}(0), 0); |
michael@0 | 15 | assertEq(function(x){return x*1}(-4), -4); |
michael@0 | 16 | assertEq(function(x){return x*2}(4), 8); |
michael@0 | 17 | assertEq(function(x){return x*2}(0), 0); |
michael@0 | 18 | assertEq(function(x){return x*2}(-4), -8); |
michael@0 | 19 | assertEq(function(x){return x*2}(2000000000), 4000000000); |
michael@0 | 20 | assertEq(function(x){return x*5}(4), 20); |
michael@0 | 21 | assertEq(function(x){return x*5}(0), 0); |
michael@0 | 22 | assertEq(function(x){return x*5}(-4), -20); |
michael@0 | 23 | assertEq(function(x){return x*0}(0), 0); |
michael@0 | 24 | assertEq(function(x){return x*0}(5), 0); |
michael@0 | 25 | assertEq(function(x){return x*0}(-5), -0); |
michael@0 | 26 | assertEq(function(x){return x*-5}(4), -20); |
michael@0 | 27 | assertEq(function(x){return x*-5}(0), -0); |
michael@0 | 28 | assertEq(function(x){return x*-5}(-4), 20); |
michael@0 | 29 | assertEq(function(x){return x*20000}(100000000), 2000000000000); |
michael@0 | 30 | |
michael@0 | 31 | // Constant folding |
michael@0 | 32 | assertEq(function(){var x=5; return x*4}(), 20); |
michael@0 | 33 | assertEq(function(){var x=5; return x*-4}(), -20); |
michael@0 | 34 | assertEq(function(){var x=0; return x*4}(), 0); |
michael@0 | 35 | assertEq(function(){var x=0; return x*0}(), 0); |
michael@0 | 36 | assertEq(function(){var x=0; return x*-4}(), -0); |
michael@0 | 37 | assertEq(function(){var x=20000; return x*100000000}(), 2000000000000); |