1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/jit-test/tests/ion/bug825599.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,27 @@ 1.4 +var typedSwitch0 = function (a) { 1.5 + switch (a) { 1.6 + case null: 1.7 + return 0; 1.8 + case 1.1: 1.9 + return 1; 1.10 + case "2": 1.11 + return 2; 1.12 + case 3: 1.13 + return 3; 1.14 + } 1.15 + return 4; 1.16 +}; 1.17 + 1.18 +// reuse the same function for testing with different inputs & type. 1.19 +var typedSwitch1 = eval(typedSwitch0.toSource()); 1.20 +var typedSwitch2 = eval(typedSwitch0.toSource()); 1.21 +var typedSwitch3 = eval(typedSwitch0.toSource()); 1.22 +var typedSwitch4 = eval(typedSwitch0.toSource()); 1.23 + 1.24 +for (var i = 0; i < 100; i++) { 1.25 + assertEq(typedSwitch0(null), 0); 1.26 + assertEq(typedSwitch1(1.1), 1); 1.27 + assertEq(typedSwitch2("2"), 2); 1.28 + assertEq(typedSwitch3(3), 3); 1.29 + assertEq(typedSwitch4(undefined), 4); 1.30 +}