aboutsummaryrefslogtreecommitdiff
path: root/src/settings.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-03-10 13:59:40 -0700
committerAlon Zakai <alonzakai@gmail.com>2013-03-10 13:59:40 -0700
commit8be82c04408cab6519d3ed58305465ae97ca9da3 (patch)
tree8cc33c4bfd17d305ae19fa417d105ab5816c8e2f /src/settings.js
parentb1240603040c53bbedb3f2ac08063532a96bcd0e (diff)
pgo for unused function detection
Diffstat (limited to 'src/settings.js')
-rw-r--r--src/settings.js8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/settings.js b/src/settings.js
index 440d5094..101c403c 100644
--- a/src/settings.js
+++ b/src/settings.js
@@ -332,6 +332,14 @@ var ASM_JS = 0; // If 1, generate code in asm.js format. XXX This is highly expe
// and will not work on most codebases yet. It is NOT recommended that you
// try this yet.
+var PGO = 0; // Enables profile-guided optimization in the form of runtime checks for
+ // which functions are actually called. Emits a list during shutdown that you
+ // can pass to DEAD_FUNCTIONS (you can also emit the list manually by
+ // calling PGOMonitor.dump());
+var DEAD_FUNCTIONS = []; // A list of functions that no code will be emitted for, and
+ // a runtime abort will happen if they are called
+ // TODO: options to lazily load such functions
+
var EXPLICIT_ZEXT = 0; // If 1, generate an explicit conversion of zext i1 to i32, using ?:
var NECESSARY_BLOCKADDRS = []; // List of (function, block) for all block addresses that are taken.