options = {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:true, unused:true, hoist_funs:true,
- keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true, reduce_vars:true
+ keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
+ reduce_funcs: true, reduce_vars:true
}
input: {
function f1() {
options = {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:true, unused:true, hoist_funs:true,
- keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true, reduce_vars:true
+ keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
+ reduce_funcs: true, reduce_vars:true
}
input: {
define(["require", "exports", 'handlebars'], function (require, exports, hb) {
options = {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:true, unused:true, hoist_funs:true,
- keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true, reduce_vars:true
+ keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
+ reduce_funcs: true, reduce_vars:true
}
input: {
function f1(obj) {
options = {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:true, unused:true, hoist_funs:true,
- keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true, reduce_vars:true
+ keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
+ reduce_funcs: true, reduce_vars:true
}
input: {
function f1() {
options = {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:false, unused:true, hoist_funs:true,
- keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true, reduce_vars:true
+ keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
+ reduce_funcs: true, reduce_vars:true
}
input: {
function f1(y) {
options = {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:true, unused:true, hoist_funs:true,
- keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true, reduce_vars:true
+ keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
+ reduce_funcs: true, reduce_vars:true
}
input: {
function f0(o, a, h) {
options = {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:true, unused:true, hoist_funs:true,
- keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true, reduce_vars:true
+ keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
+ reduce_funcs: true, reduce_vars:true
}
input: {
function f1() {
options = {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:true, unused:true, hoist_funs:true,
- keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true, reduce_vars:true
+ keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
+ reduce_funcs: true, reduce_vars:true
}
input: {
function constant_vars_can_be_replaced_in_any_scope() {
options = {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:true, unused:true, hoist_funs:true,
- keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true, reduce_vars:true
+ keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
+ reduce_funcs: true, reduce_vars:true
}
input: {
function f1() {
options = {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:true, unused:true, hoist_funs:true,
- keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true, reduce_vars:true
+ keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
+ reduce_funcs: true, reduce_vars:true
}
input: {
function f1(x) {
collapse_vars:true, sequences:true, properties:true, dead_code:true, conditionals:true,
comparisons:true, evaluate:true, booleans:true, loops:true, unused:true, hoist_funs:true,
keep_fargs:true, if_return:true, join_vars:true, cascade:true, side_effects:true,
- toplevel:true, reduce_vars:true
+ toplevel:true, reduce_funcs: true, reduce_vars:true
}
input: {
var outer = function() {
hoist_funs: true,
keep_fargs: true,
loops: false,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
unused: true,
options = {
collapse_vars: true,
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
reduce_vars_assign: {
options = {
collapse_vars: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
iife_1: {
options = {
collapse_vars: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
iife_2: {
options = {
collapse_vars: true,
+ reduce_funcs: false,
reduce_vars: false,
toplevel: true,
unused: false,
options = {
collapse_vars: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
collapse_vars: true,
evaluate: true,
keep_fargs: false,
+ reduce_funcs: true,
reduce_vars: true,
sequences: true,
unused: true,
issue_2298: {
options = {
collapse_vars: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
evaluate: true,
pure_getters: true,
properties: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
inline: true,
join_vars: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
sequences: true,
global_defs : {
C : 0
},
+ reduce_funcs : true,
reduce_vars : true,
toplevel : true,
unused : true
options = {
conditionals : true,
evaluate : true,
+ reduce_funcs : true,
reduce_vars : true,
unused : true,
}
unsafe_evaluate: {
options = {
evaluate : true,
+ reduce_funcs : true,
reduce_vars : true,
side_effects : true,
unsafe : true,
unsafe_evaluate_side_effect_free_1: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unsafe: true,
unused: true,
evaluate: true,
passes: 2,
pure_getters: "strict",
+ reduce_funcs: true,
reduce_vars: true,
unsafe: true,
unused: true,
unsafe_evaluate_escaped: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unsafe: true,
unused: true,
unsafe_evaluate_modified: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unsafe: true,
unused: true,
unsafe_evaluate_unknown: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unsafe: true,
unused: true,
unsafe_evaluate_object_1: {
options = {
evaluate : true,
+ reduce_funcs : true,
reduce_vars : true,
unsafe : true
}
unsafe_evaluate_object_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unsafe: true,
unsafe_evaluate_object_3: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unsafe: true,
unsafe_evaluate_array_1: {
options = {
evaluate : true,
+ reduce_funcs : true,
reduce_vars : true,
unsafe : true
}
unsafe_evaluate_array_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unsafe: true,
unsafe_evaluate_array_3: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unsafe: true,
unsafe_evaluate_array_4: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unsafe: true,
unsafe_evaluate_array_5: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unsafe: true,
unsafe_evaluate_equality_1: {
options = {
evaluate : true,
+ reduce_funcs : true,
reduce_vars : true,
unsafe : true,
unused : true
collapse_vars: true,
evaluate : true,
passes : 2,
+ reduce_funcs : true,
reduce_vars : true,
unsafe : true,
unused : true
conditionals: true,
evaluate: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
iife: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
iife_new: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
multi_def_1: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
multi_def_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
multi_def_3: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
use_before_var: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
inner_var_if: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
inner_var_label: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
inner_var_for_1: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
inner_var_for_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
inner_var_for_in_1: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
inner_var_for_in_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
inner_var_catch: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
issue_1533_1: {
options = {
collapse_vars: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
issue_1533_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
toplevel_on: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel:true,
unused: true,
toplevel_off: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel:false,
unused: true,
options = {
evaluate: true,
loops: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel:true,
unused: true,
options = {
evaluate: true,
loops: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel:false,
unused: true,
options = {
evaluate: true,
loops: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel:true,
unused: true,
options = {
evaluate: true,
loops: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel:false,
unused: true,
options = {
evaluate: true,
loops: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel:true,
unused: true,
options = {
evaluate: true,
loops: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel:false,
unused: true,
defun_reference: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
defun_inline_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
defun_inline_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
evaluate: true,
inline: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
unused: true,
defun_call: {
options = {
inline: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
defun_redefine: {
options = {
inline: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
func_inline: {
options = {
inline: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
func_modified: {
options = {
inline: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
defun_label: {
options = {
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
double_reference: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
iife_arguments_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
iife_arguments_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
iife_eval_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
iife_eval_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
iife_func_side_effects: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
issue_1595_1: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
issue_1595_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
options = {
evaluate: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
issue_1595_4: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
options = {
evaluate: true,
hoist_vars: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
conditionals: true,
evaluate: true,
dead_code: true,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
switches: true,
evaluate: true,
dead_code: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
switches: true,
conditionals: true,
evaluate: true,
dead_code: true,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
switches: true,
evaluate: true,
dead_code: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
switches: true,
dead_code: true,
evaluate: true,
keep_fargs: false,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
switches: true,
dead_code: true,
evaluate: true,
keep_fargs: false,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
switches: true,
unary_delete: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
options = {
evaluate: true,
keep_fargs: false,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
evaluate: true,
inline: true,
keep_fargs: false,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
inline: true,
keep_fargs: false,
passes: 3,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
options = {
evaluate: true,
keep_fargs: false,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
evaluate: true,
inline: true,
keep_fargs: false,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
inline: true,
keep_fargs: false,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
sequences: true,
side_effects: true,
delay_def: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
options = {
booleans: true,
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
side_effects_assign: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
sequences: true,
side_effects: true,
pure_getters_1: {
options = {
pure_getters: "strict",
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
pure_getters_2: {
options = {
pure_getters: "strict",
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
pure_getters_3: {
options = {
pure_getters: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
options = {
booleans: true,
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
var_assign_1: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
sequences: true,
side_effects: true,
var_assign_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
sequences: true,
side_effects: true,
var_assign_3: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
sequences: true,
side_effects: true,
var_assign_4: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
sequences: true,
side_effects: true,
var_assign_5: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
sequences: true,
side_effects: true,
var_assign_6: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
immutable: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
issue_1814_1: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_1814_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
try_abort: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
boolean_binary_assign: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
cond_assign: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
iife_assign: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
issue_1850_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: false,
unused: true,
issue_1850_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: "funcs",
unused: true,
issue_1850_3: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: "vars",
unused: true,
issue_1850_4: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_1865: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unsafe: true,
}
issue_1922_1: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
issue_1922_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
accessor_1: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
}
options = {
collapse_vars: true,
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
for_in_prop: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
}
input: {
options = {
evaluate: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
inline: true,
passes: 2,
properties: true,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
evaluate: true,
inline: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
inline: true,
passes: 2,
properties: true,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
evaluate: true,
inline: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
evaluate: true,
inline: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
regex_loop: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
obj_for_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
obj_for_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
array_forin_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
array_forin_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
const_expr_1: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unsafe: true,
const_expr_2: {
options = {
evaluate: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unsafe: true,
evaluate: true,
inline: true,
pure_getters: "strict",
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
escaped_prop_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2420_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
issue_2420_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
issue_2423_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2423_2: {
options = {
inline: true,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2423_3: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2423_4: {
options = {
inline: true,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
options = {
inline: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
options = {
inline: true,
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
side_effects: true,
toplevel: true,
issue_2440_eval_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2440_eval_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2440_with_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2440_with_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2442: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
recursive_inlining_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
recursive_inlining_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
recursive_inlining_3: {
options = {
passes: 2,
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
recursive_inlining_4: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
recursive_inlining_5: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
issue_2450_1: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2450_2: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2450_3: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
unused: true,
}
issue_2450_4: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2450_5: {
options = {
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
issue_2449: {
options = {
passes: 10,
+ reduce_funcs: true,
reduce_vars: true,
toplevel: true,
unused: true,
}
expect_stdout: "PASS"
}
+
+perf_1: {
+ options = {
+ passes: 10,
+ reduce_funcs: true,
+ reduce_vars: true,
+ toplevel: true,
+ unused: true,
+ }
+ input: {
+ function foo(x, y, z) {
+ return x < y ? x * y + z : x * z - y;
+ }
+ function indirect_foo(x, y, z) {
+ return foo(x, y, z);
+ }
+ var sum = 0;
+ for (var i = 0; i < 100; ++i) {
+ sum += indirect_foo(i, i+1, i*3);
+ }
+ console.log(sum);
+ }
+ expect: {
+ function indirect_foo(x, y, z) {
+ return function(x, y, z) {
+ return x < y ? x * y + z : x * z - y;
+ }(x, y, z);
+ }
+ var sum = 0;
+ for (var i = 0; i < 100; ++i)
+ sum += indirect_foo(i, i + 1, 3 * i);
+ console.log(sum);
+ }
+ expect_stdout: "348150"
+}
+
+perf_2: {
+ options = {
+ passes: 10,
+ reduce_funcs: false,
+ reduce_vars: true,
+ toplevel: true,
+ unused: true,
+ }
+ input: {
+ function foo(x, y, z) {
+ return x < y ? x * y + z : x * z - y;
+ }
+ function indirect_foo(x, y, z) {
+ return foo(x, y, z);
+ }
+ var sum = 0;
+ for (var i = 0; i < 100; ++i) {
+ sum += indirect_foo(i, i+1, i*3);
+ }
+ console.log(sum);
+ }
+ expect: {
+ function foo(x, y, z) {
+ return x < y ? x * y + z : x * z - y;
+ }
+ function indirect_foo(x, y, z) {
+ return foo(x, y, z);
+ }
+ var sum = 0;
+ for (var i = 0; i < 100; ++i)
+ sum += indirect_foo(i, i + 1, 3 * i);
+ console.log(sum);
+ }
+ expect_stdout: "348150"
+}