aboutsummaryrefslogtreecommitdiff
path: root/lib/compress.js
AgeCommit message (Expand)Author
2018-01-04preserve constant modification under strict mode (#2717)Alex Lam S.L
2018-01-04extend `inline` (#2714)...- compress `function` with variables within loops - restrict to `AST_Var` for better compatibility with ES6+Alex Lam S.L
2018-01-04apply `collapse_vars` to loop conditions (#2712)Alex Lam S.L
2018-01-04drop `unused` assignment based on `reduce_vars` (#2709)Alex Lam S.L
2018-01-03fix `reduce_vars` on `AST_Defun` (#2708)Alex Lam S.L
2018-01-03inline functions with `AST_Var` (#2688)Alex Lam S.L
2018-01-02enhance `collapse_vars` (#2704)Alex Lam S.L
2018-01-02enhance `if_return` (#2703)Alex Lam S.L
2018-01-02reset argument value within loop after `inline` (#2699)Alex Lam S.L
2018-01-02scan within IIFEs of assigned values (#2702)...fixes #2701Alex Lam S.L
2018-01-01enhance `join_vars` & `sequences` (#2697)...- nudge declarations without assignments - within `AST_BlockStatement` - across `AST_If`Alex Lam S.L
2017-12-31fix `inline` on duplicate argument names (#2698)Alex Lam S.L
2017-12-31reduce hoisting declarations (#2687)Alex Lam S.L
2017-12-30fix `dead_code` on escaped `return` assignment (#2693)...fixes #2692Alex Lam S.L
2017-12-29minor clean-ups (#2686)Alex Lam S.L
2017-12-28fix `pure_getters` on `AST_Binary` (#2681)...fixes #2678Alex Lam S.L
2017-12-28fix function inlining within loops (#2675)...fixes #2663Alex Lam S.L
2017-12-27fix `dead_code` on `return` assignments (#2668)...fixes #2666Alex Lam S.L
2017-12-27retain recursive function names (#2667)...fixes #2665Alex Lam S.L
2017-12-27fix bugs on substituted `AST_Defun` (#2661)...fixes #2660Alex Lam S.L
2017-12-26replace single-use recursive functions (#2659)...fixes #2628Alex Lam S.L
2017-12-26suppress `inline` within substituted `AST_Scope` (#2658)...fixes #2657Alex Lam S.L
2017-12-26improve `unused` over duplicate variable names (#2656)Alex Lam S.L
2017-12-25add `html-minifier` to benchmarks (#2646)Alex Lam S.L
2017-12-25fix infinite loop during `inline` (#2645)...fixes #2644Alex Lam S.L
2017-12-24fix comments output & improve `/*@__PURE__*/`...- fix whitespace around comments - fix comment parsing around parentheses - consider parentheses when parsing `/*@__PURE__*/` - remove all `/*@__PURE__*/` on output fixes #2638Alex Lam S.L
2017-12-24fix corner cases with `collapse_vars`, `inline` & `reduce_vars` (#2637)...fixes #2630Alex Lam S.L
2017-12-24fix escape analysis on `AST_PropAccess` (#2636)Alex Lam S.L
2017-12-20remove AST hack from `inline` (#2627)Alex Lam S.L
2017-12-20disable `hoist_funs` by default (#2626)Alex Lam S.L
2017-12-20avoid `inline` of function with special argument names (#2625)Alex Lam S.L
2017-12-19fix `inline` after single-use `reduce_vars` (#2623)Alex Lam S.L
2017-12-19handle global constant collision with local variable after `inline` (#2617)...fixes #2616Alex Lam S.L
2017-12-18compress `apply()` & `call()` of `function` (#2613)...- `fn.apply(a, [ ... ])` => `fn.call(a, ...)` - `fn.call(a, ... )` => `a, fn(...)` where `fn` can be `function` literal or symbol reference linked through `reduce_vars`Alex Lam S.L
2017-12-18drop property assignment to constants (#2612)Alex Lam S.L
2017-12-18improve transversal efficiency in `collapse_vars` (#2611)...fixes #2603Alex Lam S.L
2017-12-17improve `reset_opt_flags()` (#2610)Alex Lam S.L
2017-12-16account for `catch` variable when `inline` (#2605)...fixes #2604Alex Lam S.L
2017-12-16fix nested `inline` (#2602)...fixes #2601Alex Lam S.L
2017-12-15fix escape analysis on `||` and `&&` (#2600)...fixes #2598Alex Lam S.L
2017-12-15fix `dead_code` on nested `try` (#2599)...fixes #2597Alex Lam S.L
2017-12-15fix `reduce_vars` on `do...while` (#2596)Alex Lam S.L
2017-12-15handle `inline` of function arguments (#2590)...fixes #2476Alex Lam S.L
2017-12-14inline single-use `function` across loop (#2594)Alex Lam S.L
2017-12-14fix `reduce_vars` on single `AST_Defun` reference across loop (#2593)Alex Lam S.L
2017-12-14improve `reduce_vars` (#2592)...- account for hoisting nature of `var`Alex Lam S.L
2017-12-14improve `collapse_vars` (#2591)...- handle single-use assignments other than `AST_VarDef` - scan `AST_Call` for candidatesAlex Lam S.L
2017-12-14fix `dead_code` on `return`/`throw` within `try` (#2588)Alex Lam S.L
2017-12-14drop local assign-only variable in `return` (#2587)Alex Lam S.L
2017-12-14fold `cascade` functionality into `collapse_vars` (#2586)Alex Lam S.L