aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-03-04 17:07:25 -0800
committerAlon Zakai <alonzakai@gmail.com>2013-03-04 17:07:25 -0800
commit26a3a085fc1be4f3d648a2e5e6b05c54f4b04a00 (patch)
treee791121bed35a7bfe1377ac8eca0151309842c24 /src
parent719e805ecfe14ec3582bb8285527e4a9fde5cb21 (diff)
emscripten_jcache_printf
Diffstat (limited to 'src')
-rw-r--r--src/library.js17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/library.js b/src/library.js
index 1676a82c..1cd7e3f5 100644
--- a/src/library.js
+++ b/src/library.js
@@ -7368,6 +7368,23 @@ LibraryManager.library = {
emscripten_random: function() {
return Math.random();
},
+
+ emscripten_jcache_printf___deps: ['_formatString'],
+ emscripten_jcache_printf_: function(varargs) {
+ var MAX = 10240;
+ if (!_emscripten_jcache_printf_.buffer) {
+ _emscripten_jcache_printf_.buffer = _malloc(MAX);
+ }
+ var i = 0;
+ do {
+ var curr = {{{ makeGetValue('varargs', 'i*4', 'i8') }}};
+ {{{ makeSetValue('_emscripten_jcache_printf_.buffer', 'i', 'curr', 'i8') }}};
+ i++;
+ assert(i*4 < MAX);
+ } while (curr != 0);
+ Module.print(intArrayToString(__formatString(_emscripten_jcache_printf_.buffer, varargs + i*4)).replace('\\n', ''));
+ Runtime.stackAlloc(-4*i); // free up the stack space we know is ok to free
+ },
};
function autoAddDeps(object, name) {