1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/js/src/jit-test/tests/basic/testBug673066.js Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,23 @@ 1.4 +function f(code) { 1.5 + a = code.replace(/s/, ""); 1.6 + wtt = a 1.7 + code = code.replace(/\/\*DUPTRY\d+\*\//, function(k) { 1.8 + n = parseInt(k.substr(8), 0); 1.9 + return g("try{}catch(e){}", n) 1.10 + }); 1.11 + f = eval("(function(){" + code + "})") 1.12 + if (typeof disassemble == 'function') { 1.13 + disassemble("-r", f) 1.14 + } 1.15 +} 1.16 +function g(s, n) { 1.17 + if (n == 0) { 1.18 + return s 1.19 + } 1.20 + s2 = s + s 1.21 + r = n % 2 1.22 + d = (n - r) / 2 1.23 + m = g(s2, d) 1.24 + return r ? m + s : m 1.25 +} 1.26 +f("switch(''){default:break;/*DUPTRY525*/}")