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 | // RegExp.exec -> RegExp.test optimization should use the builtin test method. |
michael@0 | 2 | function f() { |
michael@0 | 3 | var res = 0; |
michael@0 | 4 | for (var i=0; i<100; i++) { |
michael@0 | 5 | if (/a/.exec("a")) |
michael@0 | 6 | res++; |
michael@0 | 7 | } |
michael@0 | 8 | assertEq(res, 100); |
michael@0 | 9 | } |
michael@0 | 10 | delete RegExp.prototype.test; |
michael@0 | 11 | gc(); |
michael@0 | 12 | f(); |
michael@0 | 13 | |
michael@0 | 14 | RegExp.prototype.test = function() { assertEq(0, 1); } |
michael@0 | 15 | gc(); |
michael@0 | 16 | f(); |
michael@0 | 17 | |
michael@0 | 18 | Object.defineProperty(RegExp.prototype, "test", {get: function() { assertEq(0, 1); }}); |
michael@0 | 19 | gc(); |
michael@0 | 20 | f(); |