alexlamsl
3bbe839518
Merge branch 'master' into harmony-v3.3.4
2017-12-31 00:05:32 +08:00
Alex Lam S.L
e2ec270b04
v3.3.4
v3.3.4
2017-12-31 00:01:14 +08:00
Alex Lam S.L
ace272f0c5
improve test for #2689 ( #2694 )
2017-12-30 15:49:49 +08:00
Alex Lam S.L
ed7a0a454e
fix dead_code on escaped return assignment ( #2693 )
...
fixes #2692
2017-12-30 15:20:25 +08:00
Alex Lam S.L
725aac8b46
fix parse and output of yield ( #2690 )
...
fixes #2689
2017-12-30 03:27:26 +08:00
Alex Lam S.L
d819559a01
minor clean-ups ( #2686 )
2017-12-29 14:04:52 +08:00
Alex Lam S.L
53600e9869
harmony-v3.3.3
harmony-v3.3.3
2017-12-29 04:36:27 +08:00
alexlamsl
7dea749f58
Merge branch 'master' into harmony-v3.3.3
2017-12-29 03:30:53 +08:00
Alex Lam S.L
8ca49155a8
v3.3.3
v3.3.3
2017-12-29 03:07:39 +08:00
Alex Lam S.L
b95e3338d9
fix pure_getters on AST_Binary ( #2681 )
...
fixes #2678
2017-12-28 17:01:01 +08:00
Alex Lam S.L
e40a0ee9c6
improve assignment variations ( #2671 )
2017-12-28 15:36:55 +08:00
Alex Lam S.L
0a3fac6e68
fix parenthesis output of AST_ClassExpression ( #2677 )
...
fixes #2676
2017-12-28 05:07:19 +08:00
Alex Lam S.L
cb62bd98d3
fix function inlining within loops ( #2675 )
...
fixes #2663
2017-12-28 02:53:14 +08:00
Alex Lam S.L
9f7d1f7ac6
fix reduce_vars on AST_Destructuring ( #2672 )
...
fixes #2669
fixes #2670
fixes #2673
2017-12-27 16:30:57 +08:00
Alex Lam S.L
f30790b11b
fix dead_code on return assignments ( #2668 )
...
fixes #2666
2017-12-27 07:40:34 +08:00
Alex Lam S.L
5205dbcbf4
retain recursive function names ( #2667 )
...
fixes #2665
2017-12-27 07:00:12 +08:00
Alex Lam S.L
3ff625de7e
fix bugs on substituted AST_Defun ( #2661 )
...
fixes #2660
2017-12-27 05:31:37 +08:00
Alex Lam S.L
4832bc5d88
replace single-use recursive functions ( #2659 )
...
fixes #2628
2017-12-26 21:25:35 +08:00
Alex Lam S.L
7f342cb3e3
suppress inline within substituted AST_Scope ( #2658 )
...
fixes #2657
2017-12-26 18:56:59 +08:00
Alex Lam S.L
05e7d34ed4
improve unused over duplicate variable names ( #2656 )
2017-12-26 18:29:28 +08:00
Alex Lam S.L
ef74f2eaaf
harmony-v3.3.2
harmony-v3.3.2
2017-12-26 05:21:31 +08:00
alexlamsl
96082f7a9b
Merge branch 'master' into harmony-v3.3.2
2017-12-26 01:46:22 +08:00
Alex Lam S.L
86607156e3
v3.3.2
v3.3.2
2017-12-26 01:38:56 +08:00
Alex Lam S.L
0fe259e9c5
parse LF & comment correctly ( #2653 )
...
fixes #2652
2017-12-26 01:38:01 +08:00
Alex Lam S.L
a53784e0c5
harmony-v3.3.1
harmony-v3.3.1
2017-12-25 18:32:00 +08:00
alexlamsl
a3b8dec347
Merge branch 'master' into harmony-v3.3.1
2017-12-25 17:34:16 +08:00
Alex Lam S.L
49ce573971
handle non-ES5 node types in inline ( #2648 )
...
fixes #2647
2017-12-25 17:25:38 +08:00
Alex Lam S.L
8701a99a15
v3.3.1
v3.3.1
2017-12-25 03:08:28 +08:00
Alex Lam S.L
1476c78b53
add html-minifier to benchmarks ( #2646 )
2017-12-25 03:07:46 +08:00
Alex Lam S.L
cb6a92892f
fix infinite loop during inline ( #2645 )
...
fixes #2644
2017-12-25 01:57:11 +08:00
Alex Lam S.L
01bb08b553
harmony-v3.3.0
harmony-v3.3.0
2017-12-24 22:58:15 +08:00
alexlamsl
fc3010bec5
add tests for #2613
2017-12-24 22:18:34 +08:00
alexlamsl
7de541f9c8
fix tests
2017-12-24 19:21:31 +08:00
alexlamsl
dbf8684287
Merge branch 'master' into harmony-v3.3.0
2017-12-24 19:19:24 +08:00
Alex Lam S.L
f1556cb945
v3.3.0
v3.3.0
2017-12-24 17:34:56 +08:00
Alex Lam S.L
efffb81735
fix comments output & improve /*@__PURE__*/
...
- fix whitespace around comments
- fix comment parsing around parentheses
- consider parentheses when parsing `/*@__PURE__*/`
- remove all `/*@__PURE__*/` on output
fixes #2638
2017-12-24 12:38:45 +08:00
Alex Lam S.L
202f90ef8f
fix corner cases with collapse_vars, inline & reduce_vars ( #2637 )
...
fixes #2630
2017-12-24 01:24:12 +08:00
Alex Lam S.L
c07ea17c01
fix escape analysis on AST_PropAccess ( #2636 )
2017-12-24 00:36:46 +08:00
Alex Lam S.L
edb4e3bd52
make comments output more robust ( #2633 )
...
- improve handling of comments right after `return`
- retain comments after `OutputStream`
- preserve trailing comments
- fix handling of new line before comments
- handle comments around parentheses
fixes #88
fixes #112
fixes #218
fixes #372
fixes #2629
2017-12-22 04:59:54 +08:00
kzc
8d156b51fe
arrows fix for object literal methods containing arguments (#2632 )
...
fixes #2631
2017-12-21 17:50:26 +08:00
Alex Lam S.L
4113609dd4
extend test/ufuzz.js to inline & reduce_funcs ( #2620 )
...
- forward call `fN()`
- allow forward call functions to be single-use
- avoid generating `AST_Defun` within blocks
2017-12-20 23:52:18 +08:00
Alex Lam S.L
7ac7b0872f
remove AST hack from inline ( #2627 )
2017-12-20 17:05:53 +08:00
Alex Lam S.L
86ae5881b7
disable hoist_funs by default ( #2626 )
2017-12-20 17:05:40 +08:00
Alex Lam S.L
fac003c64f
avoid inline of function with special argument names ( #2625 )
2017-12-20 02:48:04 +08:00
Alex Lam S.L
2273655c17
fix inline after single-use reduce_vars ( #2623 )
2017-12-19 22:19:33 +08:00
Ondřej Španěl
01057cf76d
Transform can be simplified when clone is not done. ( #2621 )
2017-12-19 17:56:16 +08:00
Alex Lam S.L
032f096b7f
add test for #2613 ( #2618 )
2017-12-19 05:22:05 +08:00
Alex Lam S.L
4b334edf49
handle global constant collision with local variable after inline ( #2617 )
...
fixes #2616
2017-12-19 03:05:30 +08:00
Alex Lam S.L
8ddcbc39e6
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`
2017-12-18 16:23:39 +08:00
Alex Lam S.L
0b0eac1d5d
drop property assignment to constants ( #2612 )
2017-12-18 12:07:53 +08:00