diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2011-07-05 14:40:13 -0700 |
---|---|---|
committer | Ryan Dahl <ry@tinyclouds.org> | 2011-07-05 14:51:29 -0700 |
commit | 149562555c9bf56457dee9a1ad70c53ed670a776 (patch) | |
tree | f6217cf3c54ddbee03f37247a3c7c75203f868fd /deps/v8/test/mjsunit/mul-exhaustive.js | |
parent | f08720606757577d95bd09b48697c7decbf17f00 (diff) | |
download | node-new-149562555c9bf56457dee9a1ad70c53ed670a776.tar.gz |
Downgrade V8 to 3.1.8.25
There are serious performance regressions both in V8 and our own legacy
networking stack. Until we correct our own problems we are going back to the
old V8.
Diffstat (limited to 'deps/v8/test/mjsunit/mul-exhaustive.js')
-rw-r--r-- | deps/v8/test/mjsunit/mul-exhaustive.js | 140 |
1 files changed, 11 insertions, 129 deletions
diff --git a/deps/v8/test/mjsunit/mul-exhaustive.js b/deps/v8/test/mjsunit/mul-exhaustive.js index 12689db32b..452f9332c7 100644 --- a/deps/v8/test/mjsunit/mul-exhaustive.js +++ b/deps/v8/test/mjsunit/mul-exhaustive.js @@ -26,64 +26,41 @@ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. var x; +var y; +var a; -// Converts a number to string respecting -0. -function stringify(n) { - if ((1 / n) === -Infinity) return "-0"; - return String(n); +function f(a, y) { + assertEquals(a, x * y); + assertEquals(a, -x * -y); + assertEquals(-a, -x * y); + assertEquals(-a, x * -y); + assertEquals(a, y * x); + assertEquals(a, -y * -x); + assertEquals(-a, y * -x); + assertEquals(-a, -y * x); } -function f(expected, y) { - function testEval(string, x, y) { - var mulFunction = Function("x, y", "return " + string); - return mulFunction(x, y); - } - function mulTest(expected, x, y) { - assertEquals(expected, x * y); - assertEquals(expected, testEval(stringify(x) + " * y", x, y)); - assertEquals(expected, testEval("x * " + stringify(y), x, y)); - assertEquals(expected, testEval(stringify(x) + " * " + stringify(y), x, y)); - } - mulTest(expected, x, y); - mulTest(-expected, -x, y); - mulTest(-expected, x, -y); - mulTest(expected, -x, -y); - if (x === y) return; // Symmetric cases not necessary. - mulTest(expected, y, x); - mulTest(-expected, -y, x); - mulTest(-expected, y, -x); - mulTest(expected, -y, -x); -} - -x = 0; -f(0, 0); x = 1; -f(0, 0); f(1, 1); x = 2; -f(0, 0); f(2, 1); f(4, 2); x = 3; -f(0, 0); f(3, 1); f(6, 2); f(9, 3); x = 4; -f(0, 0); f(4, 1); f(8, 2); f(12, 3); f(16, 4); x = 5; -f(0, 0); f(5, 1); f(10, 2); f(15, 3); f(20, 4); f(25, 5); x = 7; -f(0, 0); f(7, 1); f(14, 2); f(21, 3); @@ -91,7 +68,6 @@ f(28, 4); f(35, 5); f(49, 7); x = 8; -f(0, 0); f(8, 1); f(16, 2); f(24, 3); @@ -100,7 +76,6 @@ f(40, 5); f(56, 7); f(64, 8); x = 9; -f(0, 0); f(9, 1); f(18, 2); f(27, 3); @@ -110,7 +85,6 @@ f(63, 7); f(72, 8); f(81, 9); x = 15; -f(0, 0); f(15, 1); f(30, 2); f(45, 3); @@ -121,7 +95,6 @@ f(120, 8); f(135, 9); f(225, 15); x = 16; -f(0, 0); f(16, 1); f(32, 2); f(48, 3); @@ -133,7 +106,6 @@ f(144, 9); f(240, 15); f(256, 16); x = 17; -f(0, 0); f(17, 1); f(34, 2); f(51, 3); @@ -146,7 +118,6 @@ f(255, 15); f(272, 16); f(289, 17); x = 31; -f(0, 0); f(31, 1); f(62, 2); f(93, 3); @@ -160,7 +131,6 @@ f(496, 16); f(527, 17); f(961, 31); x = 32; -f(0, 0); f(32, 1); f(64, 2); f(96, 3); @@ -175,7 +145,6 @@ f(544, 17); f(992, 31); f(1024, 32); x = 33; -f(0, 0); f(33, 1); f(66, 2); f(99, 3); @@ -191,7 +160,6 @@ f(1023, 31); f(1056, 32); f(1089, 33); x = 63; -f(0, 0); f(63, 1); f(126, 2); f(189, 3); @@ -208,7 +176,6 @@ f(2016, 32); f(2079, 33); f(3969, 63); x = 64; -f(0, 0); f(64, 1); f(128, 2); f(192, 3); @@ -226,7 +193,6 @@ f(2112, 33); f(4032, 63); f(4096, 64); x = 65; -f(0, 0); f(65, 1); f(130, 2); f(195, 3); @@ -245,7 +211,6 @@ f(4095, 63); f(4160, 64); f(4225, 65); x = 127; -f(0, 0); f(127, 1); f(254, 2); f(381, 3); @@ -265,7 +230,6 @@ f(8128, 64); f(8255, 65); f(16129, 127); x = 128; -f(0, 0); f(128, 1); f(256, 2); f(384, 3); @@ -286,7 +250,6 @@ f(8320, 65); f(16256, 127); f(16384, 128); x = 129; -f(0, 0); f(129, 1); f(258, 2); f(387, 3); @@ -308,7 +271,6 @@ f(16383, 127); f(16512, 128); f(16641, 129); x = 255; -f(0, 0); f(255, 1); f(510, 2); f(765, 3); @@ -331,7 +293,6 @@ f(32640, 128); f(32895, 129); f(65025, 255); x = 256; -f(0, 0); f(256, 1); f(512, 2); f(768, 3); @@ -355,7 +316,6 @@ f(33024, 129); f(65280, 255); f(65536, 256); x = 257; -f(0, 0); f(257, 1); f(514, 2); f(771, 3); @@ -380,7 +340,6 @@ f(65535, 255); f(65792, 256); f(66049, 257); x = 511; -f(0, 0); f(511, 1); f(1022, 2); f(1533, 3); @@ -406,7 +365,6 @@ f(130816, 256); f(131327, 257); f(261121, 511); x = 512; -f(0, 0); f(512, 1); f(1024, 2); f(1536, 3); @@ -433,7 +391,6 @@ f(131584, 257); f(261632, 511); f(262144, 512); x = 513; -f(0, 0); f(513, 1); f(1026, 2); f(1539, 3); @@ -461,7 +418,6 @@ f(262143, 511); f(262656, 512); f(263169, 513); x = 1023; -f(0, 0); f(1023, 1); f(2046, 2); f(3069, 3); @@ -490,7 +446,6 @@ f(523776, 512); f(524799, 513); f(1046529, 1023); x = 1024; -f(0, 0); f(1024, 1); f(2048, 2); f(3072, 3); @@ -520,7 +475,6 @@ f(525312, 513); f(1047552, 1023); f(1048576, 1024); x = 1025; -f(0, 0); f(1025, 1); f(2050, 2); f(3075, 3); @@ -551,7 +505,6 @@ f(1048575, 1023); f(1049600, 1024); f(1050625, 1025); x = 2047; -f(0, 0); f(2047, 1); f(4094, 2); f(6141, 3); @@ -583,7 +536,6 @@ f(2096128, 1024); f(2098175, 1025); f(4190209, 2047); x = 2048; -f(0, 0); f(2048, 1); f(4096, 2); f(6144, 3); @@ -616,7 +568,6 @@ f(2099200, 1025); f(4192256, 2047); f(4194304, 2048); x = 2049; -f(0, 0); f(2049, 1); f(4098, 2); f(6147, 3); @@ -650,7 +601,6 @@ f(4194303, 2047); f(4196352, 2048); f(4198401, 2049); x = 4095; -f(0, 0); f(4095, 1); f(8190, 2); f(12285, 3); @@ -685,7 +635,6 @@ f(8386560, 2048); f(8390655, 2049); f(16769025, 4095); x = 4096; -f(0, 0); f(4096, 1); f(8192, 2); f(12288, 3); @@ -721,7 +670,6 @@ f(8392704, 2049); f(16773120, 4095); f(16777216, 4096); x = 4097; -f(0, 0); f(4097, 1); f(8194, 2); f(12291, 3); @@ -758,7 +706,6 @@ f(16777215, 4095); f(16781312, 4096); f(16785409, 4097); x = 8191; -f(0, 0); f(8191, 1); f(16382, 2); f(24573, 3); @@ -796,7 +743,6 @@ f(33550336, 4096); f(33558527, 4097); f(67092481, 8191); x = 8192; -f(0, 0); f(8192, 1); f(16384, 2); f(24576, 3); @@ -835,7 +781,6 @@ f(33562624, 4097); f(67100672, 8191); f(67108864, 8192); x = 8193; -f(0, 0); f(8193, 1); f(16386, 2); f(24579, 3); @@ -875,7 +820,6 @@ f(67108863, 8191); f(67117056, 8192); f(67125249, 8193); x = 16383; -f(0, 0); f(16383, 1); f(32766, 2); f(49149, 3); @@ -916,7 +860,6 @@ f(134209536, 8192); f(134225919, 8193); f(268402689, 16383); x = 16384; -f(0, 0); f(16384, 1); f(32768, 2); f(49152, 3); @@ -958,7 +901,6 @@ f(134234112, 8193); f(268419072, 16383); f(268435456, 16384); x = 16385; -f(0, 0); f(16385, 1); f(32770, 2); f(49155, 3); @@ -1001,7 +943,6 @@ f(268435455, 16383); f(268451840, 16384); f(268468225, 16385); x = 32767; -f(0, 0); f(32767, 1); f(65534, 2); f(98301, 3); @@ -1045,7 +986,6 @@ f(536854528, 16384); f(536887295, 16385); f(1073676289, 32767); x = 32768; -f(0, 0); f(32768, 1); f(65536, 2); f(98304, 3); @@ -1090,7 +1030,6 @@ f(536903680, 16385); f(1073709056, 32767); f(1073741824, 32768); x = 32769; -f(0, 0); f(32769, 1); f(65538, 2); f(98307, 3); @@ -1136,7 +1075,6 @@ f(1073741823, 32767); f(1073774592, 32768); f(1073807361, 32769); x = 65535; -f(0, 0); f(65535, 1); f(131070, 2); f(196605, 3); @@ -1183,7 +1121,6 @@ f(2147450880, 32768); f(2147516415, 32769); f(4294836225, 65535); x = 65536; -f(0, 0); f(65536, 1); f(131072, 2); f(196608, 3); @@ -1231,7 +1168,6 @@ f(2147549184, 32769); f(4294901760, 65535); f(4294967296, 65536); x = 65537; -f(0, 0); f(65537, 1); f(131074, 2); f(196611, 3); @@ -1280,7 +1216,6 @@ f(4294967295, 65535); f(4295032832, 65536); f(4295098369, 65537); x = 131071; -f(0, 0); f(131071, 1); f(262142, 2); f(393213, 3); @@ -1330,7 +1265,6 @@ f(8589869056, 65536); f(8590000127, 65537); f(17179607041, 131071); x = 131072; -f(0, 0); f(131072, 1); f(262144, 2); f(393216, 3); @@ -1381,7 +1315,6 @@ f(8590065664, 65537); f(17179738112, 131071); f(17179869184, 131072); x = 131073; -f(0, 0); f(131073, 1); f(262146, 2); f(393219, 3); @@ -1433,7 +1366,6 @@ f(17179869183, 131071); f(17180000256, 131072); f(17180131329, 131073); x = 262143; -f(0, 0); f(262143, 1); f(524286, 2); f(786429, 3); @@ -1486,7 +1418,6 @@ f(34359607296, 131072); f(34359869439, 131073); f(68718952449, 262143); x = 262144; -f(0, 0); f(262144, 1); f(524288, 2); f(786432, 3); @@ -1540,7 +1471,6 @@ f(34360000512, 131073); f(68719214592, 262143); f(68719476736, 262144); x = 262145; -f(0, 0); f(262145, 1); f(524290, 2); f(786435, 3); @@ -1595,7 +1525,6 @@ f(68719476735, 262143); f(68719738880, 262144); f(68720001025, 262145); x = 524287; -f(0, 0); f(524287, 1); f(1048574, 2); f(1572861, 3); @@ -1651,7 +1580,6 @@ f(137438691328, 262144); f(137439215615, 262145); f(274876858369, 524287); x = 524288; -f(0, 0); f(524288, 1); f(1048576, 2); f(1572864, 3); @@ -1708,7 +1636,6 @@ f(137439477760, 262145); f(274877382656, 524287); f(274877906944, 524288); x = 524289; -f(0, 0); f(524289, 1); f(1048578, 2); f(1572867, 3); @@ -1766,7 +1693,6 @@ f(274877906943, 524287); f(274878431232, 524288); f(274878955521, 524289); x = 1048575; -f(0, 0); f(1048575, 1); f(2097150, 2); f(3145725, 3); @@ -1825,7 +1751,6 @@ f(549755289600, 524288); f(549756338175, 524289); f(1099509530625, 1048575); x = 1048576; -f(0, 0); f(1048576, 1); f(2097152, 2); f(3145728, 3); @@ -1885,7 +1810,6 @@ f(549756862464, 524289); f(1099510579200, 1048575); f(1099511627776, 1048576); x = 1048577; -f(0, 0); f(1048577, 1); f(2097154, 2); f(3145731, 3); @@ -1946,7 +1870,6 @@ f(1099511627775, 1048575); f(1099512676352, 1048576); f(1099513724929, 1048577); x = 2097151; -f(0, 0); f(2097151, 1); f(4194302, 2); f(6291453, 3); @@ -2008,7 +1931,6 @@ f(2199022206976, 1048576); f(2199024304127, 1048577); f(4398042316801, 2097151); x = 2097152; -f(0, 0); f(2097152, 1); f(4194304, 2); f(6291456, 3); @@ -2071,7 +1993,6 @@ f(2199025352704, 1048577); f(4398044413952, 2097151); f(4398046511104, 2097152); x = 2097153; -f(0, 0); f(2097153, 1); f(4194306, 2); f(6291459, 3); @@ -2135,7 +2056,6 @@ f(4398046511103, 2097151); f(4398048608256, 2097152); f(4398050705409, 2097153); x = 4194303; -f(0, 0); f(4194303, 1); f(8388606, 2); f(12582909, 3); @@ -2200,7 +2120,6 @@ f(8796090925056, 2097152); f(8796095119359, 2097153); f(17592177655809, 4194303); x = 4194304; -f(0, 0); f(4194304, 1); f(8388608, 2); f(12582912, 3); @@ -2266,7 +2185,6 @@ f(8796097216512, 2097153); f(17592181850112, 4194303); f(17592186044416, 4194304); x = 4194305; -f(0, 0); f(4194305, 1); f(8388610, 2); f(12582915, 3); @@ -2333,7 +2251,6 @@ f(17592186044415, 4194303); f(17592190238720, 4194304); f(17592194433025, 4194305); x = 8388607; -f(0, 0); f(8388607, 1); f(16777214, 2); f(25165821, 3); @@ -2401,7 +2318,6 @@ f(35184367894528, 4194304); f(35184376283135, 4194305); f(70368727400449, 8388607); x = 8388608; -f(0, 0); f(8388608, 1); f(16777216, 2); f(25165824, 3); @@ -2470,7 +2386,6 @@ f(35184380477440, 4194305); f(70368735789056, 8388607); f(70368744177664, 8388608); x = 8388609; -f(0, 0); f(8388609, 1); f(16777218, 2); f(25165827, 3); @@ -2540,7 +2455,6 @@ f(70368744177663, 8388607); f(70368752566272, 8388608); f(70368760954881, 8388609); x = 16777215; -f(0, 0); f(16777215, 1); f(33554430, 2); f(50331645, 3); @@ -2611,7 +2525,6 @@ f(140737479966720, 8388608); f(140737496743935, 8388609); f(281474943156225, 16777215); x = 16777216; -f(0, 0); f(16777216, 1); f(33554432, 2); f(50331648, 3); @@ -2683,7 +2596,6 @@ f(140737505132544, 8388609); f(281474959933440, 16777215); f(281474976710656, 16777216); x = 16777217; -f(0, 0); f(16777217, 1); f(33554434, 2); f(50331651, 3); @@ -2756,7 +2668,6 @@ f(281474976710655, 16777215); f(281474993487872, 16777216); f(281475010265089, 16777217); x = 33554431; -f(0, 0); f(33554431, 1); f(67108862, 2); f(100663293, 3); @@ -2830,7 +2741,6 @@ f(562949936644096, 16777216); f(562949970198527, 16777217); f(1125899839733761, 33554431); x = 33554432; -f(0, 0); f(33554432, 1); f(67108864, 2); f(100663296, 3); @@ -2905,7 +2815,6 @@ f(562949986975744, 16777217); f(1125899873288192, 33554431); f(1125899906842624, 33554432); x = 33554433; -f(0, 0); f(33554433, 1); f(67108866, 2); f(100663299, 3); @@ -2981,7 +2890,6 @@ f(1125899906842623, 33554431); f(1125899940397056, 33554432); f(1125899973951489, 33554433); x = 67108863; -f(0, 0); f(67108863, 1); f(134217726, 2); f(201326589, 3); @@ -3054,7 +2962,6 @@ f(1125899822956545, 16777215); f(1125899890065408, 16777216); f(1125899957174271, 16777217); x = 67108864; -f(0, 0); f(67108864, 1); f(134217728, 2); f(201326592, 3); @@ -3127,7 +3034,6 @@ f(1125899839733760, 16777215); f(1125899906842624, 16777216); f(1125899973951488, 16777217); x = 67108865; -f(0, 0); f(67108865, 1); f(134217730, 2); f(201326595, 3); @@ -3200,7 +3106,6 @@ f(1125899856510975, 16777215); f(1125899923619840, 16777216); f(1125899990728705, 16777217); x = 134217727; -f(0, 0); f(134217727, 1); f(268435454, 2); f(402653181, 3); @@ -3270,7 +3175,6 @@ f(1125899764236289, 8388607); f(1125899898454016, 8388608); f(1125900032671743, 8388609); x = 134217728; -f(0, 0); f(134217728, 1); f(268435456, 2); f(402653184, 3); @@ -3340,7 +3244,6 @@ f(1125899772624896, 8388607); f(1125899906842624, 8388608); f(1125900041060352, 8388609); x = 134217729; -f(0, 0); f(134217729, 1); f(268435458, 2); f(402653187, 3); @@ -3410,7 +3313,6 @@ f(1125899781013503, 8388607); f(1125899915231232, 8388608); f(1125900049448961, 8388609); x = 268435455; -f(0, 0); f(268435455, 1); f(536870910, 2); f(805306365, 3); @@ -3477,7 +3379,6 @@ f(1125899634212865, 4194303); f(1125899902648320, 4194304); f(1125900171083775, 4194305); x = 268435456; -f(0, 0); f(268435456, 1); f(536870912, 2); f(805306368, 3); @@ -3544,7 +3445,6 @@ f(1125899638407168, 4194303); f(1125899906842624, 4194304); f(1125900175278080, 4194305); x = 268435457; -f(0, 0); f(268435457, 1); f(536870914, 2); f(805306371, 3); @@ -3611,7 +3511,6 @@ f(1125899642601471, 4194303); f(1125899911036928, 4194304); f(1125900179472385, 4194305); x = 536870911; -f(0, 0); f(536870911, 1); f(1073741822, 2); f(1610612733, 3); @@ -3675,7 +3574,6 @@ f(1125899367874561, 2097151); f(1125899904745472, 2097152); f(1125900441616383, 2097153); x = 536870912; -f(0, 0); f(536870912, 1); f(1073741824, 2); f(1610612736, 3); @@ -3739,7 +3637,6 @@ f(1125899369971712, 2097151); f(1125899906842624, 2097152); f(1125900443713536, 2097153); x = 536870913; -f(0, 0); f(536870913, 1); f(1073741826, 2); f(1610612739, 3); @@ -3803,7 +3700,6 @@ f(1125899372068863, 2097151); f(1125899908939776, 2097152); f(1125900445810689, 2097153); x = 1073741823; -f(0, 0); f(1073741823, 1); f(2147483646, 2); f(3221225469, 3); @@ -3864,7 +3760,6 @@ f(1125898832052225, 1048575); f(1125899905794048, 1048576); f(1125900979535871, 1048577); x = 1073741824; -f(0, 0); f(1073741824, 1); f(2147483648, 2); f(3221225472, 3); @@ -3925,7 +3820,6 @@ f(1125898833100800, 1048575); f(1125899906842624, 1048576); f(1125900980584448, 1048577); x = 1073741825; -f(0, 0); f(1073741825, 1); f(2147483650, 2); f(3221225475, 3); @@ -3986,7 +3880,6 @@ f(1125898834149375, 1048575); f(1125899907891200, 1048576); f(1125900981633025, 1048577); x = 2147483647; -f(0, 0); f(2147483647, 1); f(4294967294, 2); f(6442450941, 3); @@ -4044,7 +3937,6 @@ f(1125897758834689, 524287); f(1125899906318336, 524288); f(1125902053801983, 524289); x = 2147483648; -f(0, 0); f(2147483648, 1); f(4294967296, 2); f(6442450944, 3); @@ -4102,7 +3994,6 @@ f(1125897759358976, 524287); f(1125899906842624, 524288); f(1125902054326272, 524289); x = 2147483649; -f(0, 0); f(2147483649, 1); f(4294967298, 2); f(6442450947, 3); @@ -4160,7 +4051,6 @@ f(1125897759883263, 524287); f(1125899907366912, 524288); f(1125902054850561, 524289); x = 4294967295; -f(0, 0); f(4294967295, 1); f(8589934590, 2); f(12884901885, 3); @@ -4215,7 +4105,6 @@ f(1125895611613185, 262143); f(1125899906580480, 262144); f(1125904201547775, 262145); x = 4294967296; -f(0, 0); f(4294967296, 1); f(8589934592, 2); f(12884901888, 3); @@ -4270,7 +4159,6 @@ f(1125895611875328, 262143); f(1125899906842624, 262144); f(1125904201809920, 262145); x = 4294967297; -f(0, 0); f(4294967297, 1); f(8589934594, 2); f(12884901891, 3); @@ -4325,7 +4213,6 @@ f(1125895612137471, 262143); f(1125899907104768, 262144); f(1125904202072065, 262145); x = 8589934591; -f(0, 0); f(8589934591, 1); f(17179869182, 2); f(25769803773, 3); @@ -4377,7 +4264,6 @@ f(1125891316776961, 131071); f(1125899906711552, 131072); f(1125908496646143, 131073); x = 8589934592; -f(0, 0); f(8589934592, 1); f(17179869184, 2); f(25769803776, 3); @@ -4429,7 +4315,6 @@ f(1125891316908032, 131071); f(1125899906842624, 131072); f(1125908496777216, 131073); x = 8589934593; -f(0, 0); f(8589934593, 1); f(17179869186, 2); f(25769803779, 3); @@ -4481,7 +4366,6 @@ f(1125891317039103, 131071); f(1125899906973696, 131072); f(1125908496908289, 131073); x = 17179869183; -f(0, 0); f(17179869183, 1); f(34359738366, 2); f(51539607549, 3); @@ -4530,7 +4414,6 @@ f(1125882726907905, 65535); f(1125899906777088, 65536); f(1125917086646271, 65537); x = 17179869184; -f(0, 0); f(17179869184, 1); f(34359738368, 2); f(51539607552, 3); @@ -4579,7 +4462,6 @@ f(1125882726973440, 65535); f(1125899906842624, 65536); f(1125917086711808, 65537); x = 17179869185; -f(0, 0); f(17179869185, 1); f(34359738370, 2); f(51539607555, 3); |