aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2014-03-17 12:53:02 -0700
committerAlon Zakai <alonzakai@gmail.com>2014-03-17 17:56:17 -0700
commitdc797a4570fcb776020c886581f6de7feaf734ea (patch)
tree071813628c10298d0331eb83b9800eb97190ad23
parentfb331c96b0c710e9b2ff4f944aa4b43e62a320e6 (diff)
make simplifyIfs a settings option
-rwxr-xr-xemcc2
-rw-r--r--src/settings.js1
2 files changed, 2 insertions, 1 deletions
diff --git a/emcc b/emcc
index 471cbb76..4ba63f21 100755
--- a/emcc
+++ b/emcc
@@ -1691,7 +1691,7 @@ try:
# simplify ifs if it is ok to make the code somewhat unreadable, and unless outlining (simplified ifs
# with commaified code breaks late aggressive variable elimination)
- if (debug_level == 0 or profiling) and shared.Settings.OUTLINING_LIMIT == 0: js_optimizer_queue += ['simplifyIfs']
+ if shared.Settings.SIMPLIFY_IFS and (debug_level == 0 or profiling) and shared.Settings.OUTLINING_LIMIT == 0: js_optimizer_queue += ['simplifyIfs']
if opt_level >= 3 and shared.Settings.PRECISE_F32: js_optimizer_queue += ['optimizeFrounds']
diff --git a/src/settings.js b/src/settings.js
index 8e0d9e2d..8b046e95 100644
--- a/src/settings.js
+++ b/src/settings.js
@@ -172,6 +172,7 @@ var OUTLINING_LIMIT = 0; // A function size above which we try to automatically
// it).
var AGGRESSIVE_VARIABLE_ELIMINATION = 0; // Run aggressiveVariableElimination in js-optimizer.js
+var SIMPLIFY_IFS = 1; // Whether to simplify ifs in js-optimizer.js
// Generated code debugging options
var SAFE_HEAP = 0; // Check each write to the heap, for example, this will give a clear