Age | Commit message (Collapse) | Author |
|
|
|
fixes #2516
|
|
fixes #2513
|
|
fixes #2508
|
|
fixes #2506
|
|
|
|
fixes #2497
|
|
|
|
fixes #2485
|
|
- unique symbol generation
- `unsafe` on `AST_Call`
|
|
|
|
fixes #2473
|
|
- all-or-nothing replacement
- avoid unmangleable names
fixes #2436
|
|
fixes #2468
|
|
- inline single-use function declarations as expressions when permissible
- depend on `reduce_vars`
- enabled by default
- disable for speed critical code
fixes #2464
|
|
|
|
fixes #2449
|
|
fixes #2456
|
|
fixes #2450
|
|
fixes #2442
|
|
fixes #2440
|
|
- 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
|
|
fixes #2428
|
|
|
|
fixes #2423
|
|
fixes #2425
|
|
- only replace same-scope usages
- augment `test/ufuzz.js` to test for `this`
fixes #2420
|
|
|
|
- trim array items only if `side_effects`
- extend to non-identifier properties
|
|
|
|
|
|
|
|
fixes #2377
|
|
|
|
|
|
|
|
`{ 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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Suppress scanning beyond assignment to `a.b`
|
|
|
|
fixes #2364
|
|
fixes #2364
|
|
|
|
- constant expression
- single reference
- same scope
- not across loop body
|
|
|