Age | Commit message (Expand) | Author |
2018-07-01 | fix corner case in `unused` | alexlamsl |
2018-06-28 | implement `directives` (#3203)...fixes #3166 | Alex Lam S.L |
2018-06-06 | general clean-ups (#3175) | Alex Lam S.L |
2018-05-07 | fix various corner cases (#3126)...- augment ufuzz/reminify test options
fixes #3125 | Alex Lam S.L |
2018-04-11 | fix `inline` of `catch`-scoped variables (#3077)...fixes #3076 | Alex Lam S.L |
2018-04-06 | fix AST corruption during `inline` of simple `return` (#3056)...fixes #3054 | Alex Lam S.L |
2018-03-23 | fix nested `inline` within loop (#3019)...fixes #3018 | Alex Lam S.L |
2018-03-22 | fix corner case in `inline` (#3017)...fixes #3016 | Alex Lam S.L |
2018-02-26 | drop lone "use strict" in function body (#2963)...fixes #2961 | Alex Lam S.L |
2018-02-25 | deduplicate parenthesis around object and function literals (#2953) | Alex Lam S.L |
2018-02-17 | improve `inline` efficiency (#2924) | Alex Lam S.L |
2018-02-13 | collapse within unary expressions (#2910) | Alex Lam S.L |
2018-02-09 | fix AST corruption due to `collapse_vars` & `inline` (#2899)...fixes #2898 | Alex Lam S.L |
2018-01-19 | enable `unsafe` for `test/ufuzz.js` (#2819)...- introduce `unsafe_undefined`
- safer `.toString()` compression
Miscellaneous
- rename `unsafe_Function` | Alex Lam S.L |
2018-01-15 | avoid double counting within single-use functions (#2785)...fixes #2783 | Alex Lam S.L |
2018-01-07 | fix recursive function `inline` (#2738)...fixes #2737 | Alex Lam S.L |
2018-01-04 | fix corner case in `inline` (#2720) | Alex Lam S.L |
2018-01-04 | forbid block-scoped `AST_Defun` in strict mode (#2718) | Alex Lam S.L |
2018-01-04 | extend `inline` (#2714)...- compress `function` with variables within loops
- restrict to `AST_Var` for better compatibility with ES6+ | Alex Lam S.L |
2018-01-04 | apply `collapse_vars` to loop conditions (#2712) | Alex Lam S.L |
2018-01-03 | inline functions with `AST_Var` (#2688) | Alex Lam S.L |
2018-01-02 | enhance `collapse_vars` (#2704) | Alex Lam S.L |
2018-01-02 | reset argument value within loop after `inline` (#2699) | Alex Lam S.L |
2018-01-01 | enhance `join_vars` & `sequences` (#2697)...- nudge declarations without assignments
- within `AST_BlockStatement`
- across `AST_If` | Alex Lam S.L |
2017-12-31 | fix `inline` on duplicate argument names (#2698) | Alex Lam S.L |
2017-12-28 | fix function inlining within loops (#2675)...fixes #2663 | Alex Lam S.L |
2017-12-26 | replace single-use recursive functions (#2659)...fixes #2628 | Alex Lam S.L |
2017-12-26 | suppress `inline` within substituted `AST_Scope` (#2658)...fixes #2657 | Alex Lam S.L |
2017-12-25 | fix infinite loop during `inline` (#2645)...fixes #2644 | Alex Lam S.L |
2017-12-24 | fix corner cases with `collapse_vars`, `inline` & `reduce_vars` (#2637)...fixes #2630 | Alex Lam S.L |
2017-12-20 | avoid `inline` of function with special argument names (#2625) | Alex Lam S.L |
2017-12-19 | fix `inline` after single-use `reduce_vars` (#2623) | Alex Lam S.L |
2017-12-19 | add test for #2613 (#2618) | Alex Lam S.L |
2017-12-19 | handle global constant collision with local variable after `inline` (#2617)...fixes #2616 | Alex Lam S.L |
2017-12-18 | compress `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-16 | account for `catch` variable when `inline` (#2605)...fixes #2604 | Alex Lam S.L |
2017-12-16 | fix nested `inline` (#2602)...fixes #2601 | Alex Lam S.L |
2017-12-15 | handle `inline` of function arguments (#2590)...fixes #2476 | Alex Lam S.L |
2017-12-14 | inline single-use `function` across loop (#2594) | Alex Lam S.L |
2017-12-14 | fold `cascade` functionality into `collapse_vars` (#2586) | Alex Lam S.L |
2017-12-07 | eliminate noop calls more aggressively (#2559) | Alex Lam S.L |
2017-12-01 | improve compression of `if` conditions (#2544) | Alex Lam S.L |
2017-11-29 | fix `inline` on nested substitutions (#2533)...fixes #2531 | Alex Lam S.L |
2017-11-11 | implement compress option `reduce_funcs` (#2466)...- inline single-use function declarations as expressions when permissible
- depend on `reduce_vars`
- enabled by default
- disable for speed critical code
fixes #2464 | Alex Lam S.L |
2017-11-09 | fix multiple nested function substitutions (#2458)...fixes #2449 | Alex Lam S.L |
2017-11-05 | inline single-use functions that are not constant expressions (#2434)...fixes #2428 | Alex Lam S.L |
2017-10-22 | safer `properties` transform (#2391)...`{ a: x, b: y }.a` => `[ x, y ][0]`
- `x` cannot be function containing `this`
`[ x, y, z ][1]` => `(x, z, y)`
- only if `z` is side-effect-free | Alex Lam S.L |
2017-10-22 | fix `unsafe` escape analysis in `reduce_vars` (#2387) | Alex Lam S.L |
2017-07-02 | improve `inline` efficiency (#2188)...... by teaching `collapse_vars` some new tricks.
fixes #2187 | Alex Lam S.L |
2017-06-27 | improve `unsafe_Func` (#2171)...- minimise disturbance to `compute_char_frequency()`
- remove extraneous quotation marks | Alex Lam S.L |