aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-11-22 16:42:47 +0100
committerAlon Zakai <alonzakai@gmail.com>2012-11-22 16:42:47 +0100
commitf27cac856b0ec9670615fbe08666e02e2450300b (patch)
tree0c579f3aca2aac7e63bd78be7bdc0ac9f9f2f88a
parent7ca37d12deccec3ce1ef54ad9aaab66f22b95fc3 (diff)
forward only the actually necessary data between emscript phases
-rw-r--r--src/modules.js20
1 files changed, 15 insertions, 5 deletions
diff --git a/src/modules.js b/src/modules.js
index 06677936..9ef87691 100644
--- a/src/modules.js
+++ b/src/modules.js
@@ -301,11 +301,21 @@ function cDefine(key) {
var PassManager = {
serialize: function() {
- print('\n//FORWARDED_DATA:' + JSON.stringify({
- Types: Types,
- Variables: Variables,
- Functions: Functions
- }));
+ if (phase == 'pre') {
+ print('\n//FORWARDED_DATA:' + JSON.stringify({
+ Types: Types,
+ Variables: Variables,
+ Functions: Functions
+ }));
+ } else if (phase == 'funcs') {
+ print('\n//FORWARDED_DATA:' + JSON.stringify({
+ Types: { preciseI64MathUsed: Types.preciseI64MathUsed },
+ Functions: {
+ blockAddresses: Functions.blockAddresses,
+ indexedFunctions: Functions.indexedFunctions
+ }
+ }));
+ }
},
load: function(json) {
var data = JSON.parse(json);