Age | Commit message (Expand) | Author |
---|---|---|
2018-03-17 | extend fuzzy RHS folding (#3006)...- `a = []; if (1) x();` => `if (a = []) x();` | Alex Lam S.L |
2018-03-06 | handle negated constants correctly in `collapse_vars` (#2975)...fixes #2974 | Alex Lam S.L |
2018-02-28 | migrate safe transformations out of `unsafe_comps` (#2962)...fixes #2959 | Alex Lam S.L |
2018-02-28 | drop `side_effects`-free `return` values (#2965) | Alex Lam S.L |
2018-02-28 | enhance `collapse_vars` (#2952)...- `a = b, b` => `a = b` - `a.b = c, c()` => `(a.b = c)()` | Alex Lam S.L |
2018-02-26 | improve fix for #2954 (#2958) | Alex Lam S.L |
2018-02-25 | fix `collapse_vars` on nested exception (#2955)...fixes #2954 | Alex Lam S.L |
2018-02-18 | fix crash in `may_throw()` (#2932)...fixes #2931 | Alex Lam S.L |
2018-02-17 | drop unused "class" definition IIFEs (#2923)...fixes #805 | Alex Lam S.L |
2018-02-14 | fix `collapse_vars` within loops (#2915)...fixes #2914 | Alex Lam S.L |
2018-02-13 | fix corner case in `collapse_vars` (#2909)...fixes #2908 | Alex Lam S.L |
2018-02-08 | account for exceptions in `AST_Assign.left` (#2892)...fixes #2891 | Alex Lam S.L |
2018-02-04 | improve exceptional flow compression by `collapse_vars` (#2880) | Alex Lam S.L |
2018-02-04 | maintain order between side-effects and externally observable assignments (#2......fixes #2878 | Alex Lam S.L |
2018-02-03 | handle `break` & `continue` in `collapse_vars` (#2875)...fixes #2873 | Alex Lam S.L |
2018-02-03 | allow `collapse_vars` across conditional branches (#2867) | Alex Lam S.L |
2018-02-02 | fix missing corner case in #2855 (#2868) | Alex Lam S.L |
2018-02-01 | account for declaration assignment in `collapse_vars` (#2859)...fixes #2858 | Alex Lam S.L |
2018-01-31 | relax `collapse_vars` on `AST_Exit` (#2855)...First introduced in #1862 to stop assignments to migrate beyond `return` or `throw`. Since then `collapse_vars` has been improved to handle various side-effect-related corner cases. | Alex Lam S.L |
2018-01-29 | compress chained compound assignments (#2850) | Alex Lam S.L |
2018-01-19 | improve `unused` on built-in functions (#2817) | Alex Lam S.L |
2018-01-16 | general improvements around `AST_ForIn` (#2796)...- compress using `collapse_vars` - remove unused `name` - simplify `loop_body` | Alex Lam S.L |
2018-01-15 | enhance `collapse_vars` (#2788) | Alex Lam S.L |
2018-01-09 | patch variable declaractions extracted within `catch` (#2753)...fixes #2749 | Alex Lam S.L |
2017-12-26 | replace single-use recursive functions (#2659)...fixes #2628 | Alex Lam S.L |
2017-12-18 | improve transversal efficiency in `collapse_vars` (#2611)...fixes #2603 | Alex Lam S.L |
2017-12-15 | handle `inline` of function arguments (#2590)...fixes #2476 | Alex Lam S.L |
2017-12-14 | improve `collapse_vars` (#2591)...- handle single-use assignments other than `AST_VarDef` - scan `AST_Call` for candidates | Alex Lam S.L |
2017-12-14 | drop local assign-only variable in `return` (#2587) | Alex Lam S.L |
2017-12-14 | fold `cascade` functionality into `collapse_vars` (#2586) | Alex Lam S.L |
2017-12-13 | recover lost opportunities from #2574 (#2584) | Alex Lam S.L |
2017-12-13 | improve `collapse_vars` on side-effect-free replacements (#2583) | Alex Lam S.L |
2017-12-12 | fix `AST_VarDef.may_throw()` (#2580) | Alex Lam S.L |
2017-12-11 | fix `collapse_vars` on `switch` (#2578) | Alex Lam S.L |
2017-12-11 | handle exceptional flow correctly in `collapse_vars` (#2574)...fixes #2571 | Alex Lam S.L |
2017-11-28 | improve synergy between `collapse_vars` & `unused` (#2521) | Alex Lam S.L |
2017-11-28 | drop assignment in `AST_VarDef.value` (#2522)...fixes #2516 | Alex Lam S.L |
2017-11-24 | fix argument/atom collision by `collapse_vars` (#2507)...fixes #2506 | Alex Lam S.L |
2017-11-24 | eliminate invalid state caching in `collapse_vars` (#2502)...fixes #2497 | Alex Lam S.L |
2017-11-13 | fix replacement logic in `collapse_vars` (#2475) | Alex Lam S.L |
2017-11-12 | allow symbol replacement on multiple occurrences (#2472)...- all-or-nothing replacement - avoid unmangleable names fixes #2436 | 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-06 | consolidate & enhance `unused` (#2439)...- 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 | Alex Lam S.L |
2017-11-05 | maintain call argument order in `collapse_vars` (#2426)...fixes #2425 | Alex Lam S.L |
2017-10-23 | deduplicate declarations regardless of `toplevel` (#2393) | 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-19 | enhance `collapse_vars` around lazy operations (#2369) | Alex Lam S.L |
2017-10-18 | fix `AST_PropAccess` in `collapse_vars` (take 3) (#2375)...Suppress scanning beyond assignment to `a.b` | Alex Lam S.L |
2017-10-17 | fix `AST_PropAccess` in `collapse_vars` (take 2) (#2372)...fixes #2364 | Alex Lam S.L |