diff options
author | Alon Zakai <alonzakai@gmail.com> | 2011-10-31 16:58:56 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2011-10-31 16:58:56 -0700 |
commit | 8ef6b1bade9a7a8a29894feb4e6fe3ca8dad711c (patch) | |
tree | 4c0617c027ad628d5246f10d286b46b0cdbe10f6 /src/jsifier.js | |
parent | a349c5df70c2e2c6e5aaa82b22742161adfeec0b (diff) |
explicitly identify emscripten-generated functions (as opposed to library ones, or handwritten ones appended to the same file), and run eliminator only on those
Diffstat (limited to 'src/jsifier.js')
-rw-r--r-- | src/jsifier.js | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/jsifier.js b/src/jsifier.js index bd432001..6cbc0eb9 100644 --- a/src/jsifier.js +++ b/src/jsifier.js @@ -931,7 +931,12 @@ function JSify(data, functionsOnly, givenFunctions, givenGlobalVariables) { } generated = generated.concat(itemsDict.function).concat(data.unparsedFunctions); - if (!mainPass) return generated.map(function(item) { return item.JS }).join('\n'); + if (!mainPass) { + Functions.allIdents = Functions.allIdents.concat(itemsDict.function.map(function(func) { + return func.ident; + })); + return generated.map(function(item) { return item.JS }).join('\n'); + } // We are ready to print out the data, but must do so carefully - we are // dealing with potentially *huge* strings. Convenient replacements and @@ -967,6 +972,8 @@ function JSify(data, functionsOnly, givenFunctions, givenGlobalVariables) { print(Functions.generateIndexing()); // done last, as it may rely on aliases set in postsets print(postParts[1]); print(shellParts[1]); + // Print out some useful metadata (for additional optimizations later, like the eliminator) + print('// EMSCRIPTEN_GENERATED_FUNCTIONS: ' + JSON.stringify(Functions.allIdents) + '\n'); return null; } |