Age | Commit message (Collapse) | Author | |
---|---|---|---|
2018-01-13 | fix `reduce_vars` on `AST_Accessor` (#2776) | Alex Lam S.L | |
fixes #2774 | |||
2018-01-04 | drop `unused` assignment based on `reduce_vars` (#2709) | Alex Lam S.L | |
2018-01-03 | fix `reduce_vars` on `AST_Defun` (#2708) | Alex Lam S.L | |
2017-12-31 | reduce hoisting declarations (#2687) | Alex Lam S.L | |
2017-12-26 | replace single-use recursive functions (#2659) | Alex Lam S.L | |
fixes #2628 | |||
2017-12-24 | fix escape analysis on `AST_PropAccess` (#2636) | Alex Lam S.L | |
2017-12-15 | fix escape analysis on `||` and `&&` (#2600) | Alex Lam S.L | |
fixes #2598 | |||
2017-12-15 | fix `reduce_vars` on `do...while` (#2596) | Alex Lam S.L | |
2017-12-15 | handle `inline` of function arguments (#2590) | Alex Lam S.L | |
fixes #2476 | |||
2017-12-14 | fix `reduce_vars` on single `AST_Defun` reference across loop (#2593) | Alex Lam S.L | |
2017-12-14 | improve `reduce_vars` (#2592) | Alex Lam S.L | |
- account for hoisting nature of `var` | |||
2017-12-14 | fold `cascade` functionality into `collapse_vars` (#2586) | Alex Lam S.L | |
2017-12-11 | rename tests (#2575) | Alex Lam S.L | |
2017-12-08 | fix escape analysis for `AST_Throw` (#2564) | Alex Lam S.L | |
2017-12-08 | fix escape analysis for `AST_Conditional` & `AST_Sequence` (#2563) | Alex Lam S.L | |
fixes #2560 | |||
2017-12-01 | convert to number under boolean context (#2545) | Alex Lam S.L | |
2017-12-01 | improve compression of loop conditions (#2543) | Alex Lam S.L | |
2017-11-29 | backport test from #2526 (#2534) | Alex Lam S.L | |
2017-11-28 | improve synergy between `collapse_vars` & `unused` (#2521) | Alex Lam S.L | |
2017-11-16 | fix cross-scope inlining of `AST_Function`s (#2486) | Alex Lam S.L | |
fixes #2485 | |||
2017-11-11 | extend `reduce_funcs` to cover cross-scope substitutions (#2469) | Alex Lam S.L | |
fixes #2468 | |||
2017-11-11 | implement compress option `reduce_funcs` (#2466) | Alex Lam S.L | |
- inline single-use function declarations as expressions when permissible - depend on `reduce_vars` - enabled by default - disable for speed critical code fixes #2464 | |||
2017-11-10 | fix object literal tracing in `reduce_vars` (#2461) | Alex Lam S.L | |
2017-11-09 | fix multiple nested function substitutions (#2458) | Alex Lam S.L | |
fixes #2449 | |||
2017-11-08 | preserve function identity in `reduce_vars` (#2451) | Alex Lam S.L | |
fixes #2450 | |||
2017-11-07 | handle circular `function` reference gracefully (#2446) | Alex Lam S.L | |
fixes #2442 | |||
2017-11-06 | account for `eval` & `with` in `reduce_vars` (#2441) | Alex Lam S.L | |
fixes #2440 | |||
2017-11-06 | consolidate & enhance `unused` (#2439) | Alex Lam S.L | |
- defer declaration removal in `collapse_vars` - account for `AST_SymbolFunarg` in deduplication - private accounting for `collapse_vars` - avoid issues with identity reference due to deep cloning fixes #2437 | |||
2017-11-05 | extend function inlining safety checks (#2430) | Alex Lam S.L | |
2017-11-05 | consolidate single-use `function` reduction (#2427) | Alex Lam S.L | |
fixes #2423 | |||
2017-11-04 | reduce `this` within functions (#2421) | Alex Lam S.L | |
- only replace same-scope usages - augment `test/ufuzz.js` to test for `this` fixes #2420 | |||
2017-10-29 | enhance `properties` (#2412) | Alex Lam S.L | |
- trim array items only if `side_effects` - extend to non-identifier properties | |||
2017-10-24 | fix `unsafe` `reduce_vars` on arrays & objects (#2397) | Alex Lam S.L | |
2017-10-24 | enhance `unsafe` `evaluate` of arrays & objects (#2394) | Alex Lam S.L | |
2017-10-22 | safer `properties` transform (#2391) | Alex Lam S.L | |
`{ 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 | |||
2017-10-22 | fix `unsafe` escape analysis in `reduce_vars` (#2387) | Alex Lam S.L | |
2017-10-21 | `unsafe` fix-ups for #2351 (#2379) | Alex Lam S.L | |
2017-10-12 | more tests for #2351 (#2357) | Alex Lam S.L | |
2017-10-09 | perform `reduce_vars` on safe literals (#2351) | Alex Lam S.L | |
- constant expression - single reference - same scope - not across loop body | |||
2017-10-01 | enhance `reduce_vars` for `AST_Accessor` (#2339) | Alex Lam S.L | |
fixes #2336 | |||
2017-07-05 | improve `compress` granularity through `typeofs` (#2201) | Alex Lam S.L | |
fixes #2198 | |||
2017-06-23 | fix `reduce_vars` on `this` (#2145) | Alex Lam S.L | |
fixes #2140 | |||
2017-06-06 | implement function inlining (#2053) | Alex Lam S.L | |
- empty body - single `AST_Return` - single `AST_SimpleStatement` - avoid `/*#__PURE__*/` Miscellaneous - enhance single-use function substitution fixes #281 | |||
2017-06-04 | fix `AST_Function` scope invariance (#2052) | Alex Lam S.L | |
improve function name hack in `run_code()` | |||
2017-05-14 | fix bugs with getter/setter (#1926) | Alex Lam S.L | |
- `reduce_vars` - `side_effects` - property access for object - `AST_SymbolAccessor` as key names enhance `test/ufuzz.js` - add object getter & setter - property assignment to setter - avoid infinite recursion in setter - fix & adjust assignment operators - 50% `=` - 25% `+=` - 2.5% each for the rest - avoid "Invalid array length" - fix `console.log()` - bypass getter - curb recursive reference - deprecate `-E`, always report runtime errors | |||
2017-05-12 | remove support for `const` (#1910) | Alex Lam S.L | |
As this is not part of ES5. | |||
2017-05-12 | avoid `arguments` and `eval` in `reduce_vars` (#1924) | Alex Lam S.L | |
fixes #1922 | |||
2017-05-07 | fix test for #1865 (#1873) | Alex Lam S.L | |
2017-05-06 | fix `unsafe` on `evaluate` of `reduce_vars` (#1870) | Alex Lam S.L | |
Determine if variables with non-constant values can escape and be modified. fixes #1865 | |||
2017-04-30 | enforce `toplevel` on other compress options (#1855) | Alex Lam S.L | |
Respect "funcs" and "vars" properly. fixes #1850 |