Commit Graph

  • ac40301813 fix chained evaluation (#1610) Alex Lam S.L 2017-03-17 00:26:48 +0800
  • 3563d8c09e extend test/run-tests.js to optionally execute uglified output (#1604) Alex Lam S.L 2017-03-16 23:20:06 +0800
  • 394e27fdd1 Add --in-source-map inline documentation Christian Maughan Tegnér 2017-03-16 15:32:38 +0100
  • e586bf9e31 fix chained evaluation reduce_vars enables substitution of variables but did not clone the value's AST_Node. alexlamsl 2017-03-16 17:38:23 +0800
  • 31faef1507 Merge 049ea3dc90 into 2fd86d3cb0 Anthony Van de Gejuchte 2017-03-16 08:27:28 +0000
  • 05a339023b implement expect_stdout: true alexlamsl 2017-03-16 14:09:38 +0800
  • 5ae04b3545 make collapse_vars consistent with toplevel (#1608) Alex Lam S.L 2017-03-16 13:22:26 +0800
  • fec904959f rename variable alexlamsl 2017-03-16 12:51:57 +0800
  • 4d8e03b719 minimise code changes alexlamsl 2017-03-16 12:50:05 +0800
  • c35069e80b use vm instead of child_process alexlamsl 2017-03-16 12:38:25 +0800
  • a80b228d8b fix hoist_vars on reduce_vars (#1607) Alex Lam S.L 2017-03-16 12:03:30 +0800
  • 966a1ca7e1 make collapse_vars consistent with toplevel kzc 2017-03-16 11:45:13 +0800
  • 8d0138cb1c fix hoist_vars on reduce_vars hoist_vars converts variable declarations into plain assignments, which then confuses reduce_vars alexlamsl 2017-03-16 11:31:34 +0800
  • b2f63543bc test input against expect_stdout alexlamsl 2017-03-16 10:34:58 +0800
  • cca2337d3d extend test/run-tests.js to optionally execute uglified output alexlamsl 2017-03-16 02:26:09 +0800
  • cf4bf4ceb1 fix stack issues with AST_Node.evaluate() (#1603) Alex Lam S.L 2017-03-16 01:02:59 +0800
  • 200090a38d add comments for #1602 alexlamsl 2017-03-15 23:24:38 +0800
  • 3787fc1570 fix stack issues with AST_Node.evaluate() As patched in #1597, make_node_from_constant() makes inconsistent and sometimes incorrect calls to optimize() and transform(). alexlamsl 2017-03-15 21:08:38 +0800
  • 8223b2e0db fix AST_Node.optimize() (#1602) Alex Lam S.L 2017-03-15 18:44:13 +0800
  • 6b305bdf8c fix AST_Node.optimize() Liberal use of Compressor.transform() and AST_Node.optimize() presents an issue for look-up operations like TreeWalker.in_boolean_context() and TreeWalker.parent(). alexlamsl 2017-03-14 19:49:29 +0800
  • 2fd86d3cb0 Merge pull request #1601 from alexlamsl/harmony-v2.8.12 harmony-v2.8.12 Alex Lam S.L 2017-03-14 14:29:32 +0800
  • 52ffabc6ed Merge bca9b4ea5b into 381bd3836e Alex Lam S.L 2017-03-14 05:19:19 +0000
  • 381bd3836e minor clean-ups (#1600) Alex Lam S.L 2017-03-14 13:19:05 +0800
  • 8f7ab602e2 Merge branch 'master' into harmony-v2.8.12 alexlamsl 2017-03-14 13:17:42 +0800
  • 1dd339f95e fix unused crashes (#1599) Alex Lam S.L 2017-03-14 13:13:43 +0800
  • cc880fe4fa minor clean-ups - remove obsolete optimisation in AST_Binary after #1477 - improve TreeWalker.has_directive() readability and resilience against multiple visits alexlamsl 2017-03-14 11:58:16 +0800
  • bab04cb831 fix unused crashes - AST_DefaultAssign on keep_fargs - AST_Expansion on keep_fargs - AST_Destructuring on top-level declarations without toplevel alexlamsl 2017-03-14 03:58:58 +0800
  • 52de21d92d Merge 21072453d6 into 919d5e3482 Rebecca Turner 2017-03-13 12:39:46 +0000
  • bca9b4ea5b stack now relfects self correctly alexlamsl 2017-03-12 17:07:45 +0800
  • 7d8bcc06a1 update tests alexlamsl 2017-03-12 16:57:08 +0800
  • 06f17bd0ec simplify optimisation loops alexlamsl 2017-03-12 16:55:24 +0800
  • e62c72a199 Merge f8dd879873 into 919d5e3482 Geraint 2017-03-11 03:01:50 +0000
  • 7550c53fd6 fix usage of transform() vs optimize() Given the current OPT() node: - optimize(compressor) works on the same level, and will only descend() if returned instance is different - transform(compressor) works on child nodes, and will always descend() alexlamsl 2017-03-10 15:17:05 +0800
  • 919d5e3482 v2.8.12 v2.8.12 Alex Lam S.L 2017-03-11 05:00:55 +0800
  • e3a3db73ae temporary fix for boolean bug (#1597) Alex Lam S.L 2017-03-11 04:59:55 +0800
  • 5db838213a temporary fix for boolean bug alexlamsl 2017-03-11 03:43:09 +0800
  • d9344f30b8 disallow parameter substitution for named IIFEs (#1596) Alex Lam S.L 2017-03-11 03:34:55 +0800
  • 971a6cab2d disallow parameter substitution for named IIFEs Self-referenced function has non-fixed values assigned to its parameters. alexlamsl 2017-03-11 01:43:23 +0800
  • c7063c1f38 Merge pull request #1591 from alexlamsl/harmony-v2.8.11 harmony-v2.8.11 Alex Lam S.L 2017-03-10 16:38:23 +0800
  • be80f7e706 support multi-line string in tests (#1590) Alex Lam S.L 2017-03-10 11:27:30 +0800
  • f4a12b34f2 Merge branch 'master' into harmony-v2.8.11 alexlamsl 2017-03-10 11:17:49 +0800
  • cf45e2f79b fixup for #1585 (#1589) v2.8.11 Alex Lam S.L 2017-03-10 10:49:41 +0800
  • d17f1a0f3a support multi-line string in tests expect_exact sometimes have multiple lines and \n are hard to read. alexlamsl 2017-03-10 05:29:46 +0800
  • d32ce114b0 fixup for #1585 As patched on harmony, statement() is the only user of embed_tokens() with a missing error branch. alexlamsl 2017-03-10 04:51:28 +0800
  • 8354758f30 v2.8.11 Alex Lam S.L 2017-03-10 04:17:21 +0800
  • 9e6b128374 fix catch variable reference in IE8 (#1587) Alex Lam S.L 2017-03-10 03:15:21 +0800
  • 93cdb194f4 Correctly raise a parse exception with a missing loop body (#1585) Michael Mior 2017-03-09 14:08:43 -0500
  • b8b4c9ba93 fix catch variable reference in IE8 AST_Scope.def_variable() will overwrite AST_Symbol.thedef, so save a copy before calling. alexlamsl 2017-03-09 22:58:24 +0800
  • b633706ce4 fix & improve function argument compression (#1584) Alex Lam S.L 2017-03-09 19:11:05 +0800
  • 89aea144be Correctly raise a parse exception with a missing loop body Michael Mior 2017-03-09 06:02:50 -0500
  • f326b68605 fix & improve function argument compression - one-use function call => IIFE should take eval() & arguments into account - if unused parameter cannot be eliminated, replace it with 0 alexlamsl 2017-03-09 14:11:01 +0800
  • 5d5c7934a5 Merge pull request #1582 from alexlamsl/harmony-v2.8.10 Alex Lam S.L 2017-03-09 13:14:55 +0800
  • 8f4b45f4f8 Merge branch 'master' into harmony-v2.8.10 alexlamsl 2017-03-09 06:02:28 +0800
  • 988f937cfa Merge 1874ece864 into e9920f7ca1 Armagan Amcalar 2017-03-08 21:52:15 +0000
  • e9920f7ca1 v2.8.10 v2.8.10 harmony-v2.8.10 Alex Lam S.L 2017-03-09 05:48:06 +0800
  • 7e465d4a01 scan RHS of dropped assignments (#1581) Alex Lam S.L 2017-03-09 05:22:27 +0800
  • 95d1c561bd scan RHS of dropped assignments - similar case as #1578 but against #1450 instead - fix this binding in #1450 as well alexlamsl 2017-03-08 21:28:39 +0800
  • aa80ee349d remove checkboxes from Issues template Alex Lam S.L 2017-03-08 19:19:54 +0800
  • 80e81765cf explain how to make a proper bug report (#1579) Alex Lam S.L 2017-03-08 18:56:01 +0800
  • 9a738d1f02 explain how to make a proper bug report kzc 2017-03-08 17:39:25 +0800
  • 711f88dcb4 scan assignment value in drop_unused() (#1578) Alex Lam S.L 2017-03-08 18:37:32 +0800
  • d73484eef9 scan assignment value in drop_unused() those were not optimised for unused before, which made it necessary for reduce_vars to have separate steps for keep_fnames alexlamsl 2017-03-08 17:29:06 +0800
  • 344d11d591 v2.8.9 v2.8.9 Alex Lam S.L 2017-03-08 12:41:22 +0800
  • c7cdcf06a6 fix function name eliminiation (#1576) Alex Lam S.L 2017-03-08 12:39:57 +0800
  • f1949f0031 fix function name eliminiation Function expression can be assigned to a variable and be given a name. Ensure function name is the reduced variable before clearing it out. alexlamsl 2017-03-08 11:49:04 +0800
  • 19aa495a4c Merge 17488bedbe into 3ee55748d4 kzc 2017-03-08 00:08:14 +0000
  • 3ee55748d4 only run benchmark & jetstream on CI (#1571) Alex Lam S.L 2017-03-08 06:00:51 +0800
  • aa5ceab503 only run benchmark & jetstream on CI alexlamsl 2017-03-08 01:31:22 +0800
  • dedbeeff15 plan B for IE8 do-while semi-colon fix (#1572) Alex Lam S.L 2017-03-08 05:07:05 +0800
  • b3da8fbe89 plan B for IE8 do-while semi-colon fix - omitting trailing semi-colon in do-while breaks non-browser parser, e.g. uglify-js 1.x - trailing semi-colon only breaks IE8 if followed by else or while - always use braces in do-while body to workaround 2nd case with no size loss in compression alexlamsl 2017-03-08 04:15:53 +0800
  • bd6dee52ab fix return from recursive IIFE (#1570) Alex Lam S.L 2017-03-08 03:31:51 +0800
  • 0bb7a08e0e fix return from recursive IIFE side-effects did not account for IIFEs being able to reference itself thus making its return value potentially significant alexlamsl 2017-03-08 01:14:29 +0800
  • 7d5aaaf8ac Merge a1ae0cd2d0 into 144052ca49 szakharchenko 2017-03-07 17:01:17 +0000
  • 952e2656eb Merge pull request #1567 from alexlamsl/harmony-v2.8.8 Alex Lam S.L 2017-03-07 23:56:23 +0800
  • 240383a314 is_block_scope return true when current node is an instance of AST_IterationStatement. then the scope of let variable can be figured out accurately (#1561) qinayi 2017-03-07 23:50:58 +0800
  • 250b782b1e Merge branch 'master' into harmony-v2.8.8 alexlamsl 2017-03-07 20:25:52 +0800
  • 144052ca49 v2.8.8 v2.8.8 Alex Lam S.L 2017-03-07 19:58:41 +0800
  • 65c848cc6f include benchmark.js in test suite (#1564) Alex Lam S.L 2017-03-07 19:25:12 +0800
  • 20dd1cd38e include benchmark.js in test suite - report file sizes and overall run time - exit with non-zero code upon error alexlamsl 2017-03-07 17:04:09 +0800
  • 8a8a94a596 fix deep cloning of labels (#1565) Alex Lam S.L 2017-03-07 18:38:27 +0800
  • d7b2d17524 is_block_scope return true when current node is an instance of AST_IterationStatement. then the scope of let variable can be figured out accurately 谦义 2017-03-06 23:08:59 +0800
  • 53d0887da2 fix deep cloning of labels AST_Label.references get .initialize() to [] every time after .clone() alexlamsl 2017-03-07 18:12:04 +0800
  • 8153b7bd8a transform function calls to IIFEs (#1560) Alex Lam S.L 2017-03-07 15:37:52 +0800
  • da5c2227eb transform function calls to IIFEs - expose function body to call sites for potential optimisations - suppress substitution of variable used within AST_Defun alexlamsl 2017-03-06 21:59:24 +0800
  • 1874ece864 Fix undefined symbols in compression Armagan Amcalar 2017-03-07 03:42:42 +0100
  • a1e988701c Merge ea00f1ab35 into d787d70127 Alex Lam S.L 2017-03-06 23:39:33 +0000
  • d787d70127 avoid substitution of global variables (#1557) Alex Lam S.L 2017-03-07 03:11:03 +0800
  • 7dcf11e0ed avoid substitution of global variables - unless toplevel is enabled - global const works as before alexlamsl 2017-03-06 15:14:57 +0800
  • 3ac2421932 collapse_vars: do not replace a constant in loop condition or init (#1562) kzc 2017-03-06 12:42:33 -0500
  • 7f8e6f19a6 collapse_vars: do not replace a constant in loop condition or init kzc 2017-03-06 10:51:04 -0500
  • 1465f1b998 Walk into class body as well if it exists (normally undefined). Ondřej Španěl 2017-03-06 14:31:20 +0100
  • a9fc9ddc33 suppress semicolons after do/while (#1556) Alex Lam S.L 2017-03-06 17:31:35 +0800
  • 605a5f0be8 suppress semicolons after do/while - unless both beautify & screw-ie8 are enabled - deprecate workaround for if-do-while-else alexlamsl 2017-03-05 22:30:18 +0800
  • 3c2b3aeddb Merge pull request #1554 from alexlamsl/harmony-v2.8.6 harmony-v2.8.7 Alex Lam S.L 2017-03-05 23:03:30 +0800
  • aa605495f8 Merge branch 'master' into harmony-v2.8.6 alexlamsl 2017-03-05 21:42:34 +0800
  • 33a26d456b patch up #1543 for harmony kzc 2017-03-05 16:15:13 +0800
  • a5d62a3fc6 v2.8.7 v2.8.7 Alex Lam S.L 2017-03-05 17:17:08 +0800
  • 067e5a5762 fixup for #1553 (#1555) Alex Lam S.L 2017-03-05 17:15:37 +0800
  • 9880c9091a fixup for #1553 - ++a is the one that is foldable - transform a++ into ++a for better optimisation alexlamsl 2017-03-05 17:05:20 +0800
  • 49d9ac1c43 Merge branch 'master' into harmony-v2.8.6 alexlamsl 2017-03-05 16:03:56 +0800