kripken/emscripten — pull request #1626 by ngld (2013-09-17 12:47:07+00:00)
Title: Implemented #1573. (Use llvm.used)

Every function marked as used (i.e. by using EMSCRIPTEN_KEEPALIVE) is automatically added to EXPORTED_FUNCTIONS.
I had to add code to PassManager.load() to load the EXPORTED_FUNCTIONS set between passes or the changes made in intertyper.js would be lost.