aboutsummaryrefslogtreecommitdiff
path: root/src/preamble.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-01-18 13:28:10 -0800
committerAlon Zakai <alonzakai@gmail.com>2012-01-18 13:28:10 -0800
commit4d2b97a3473c6f7d94fe048558b662011e7d5e56 (patch)
tree3d7da3d5d310a8d9e0b3409ce370c385a8103632 /src/preamble.js
parentcf5947187de4390ad0440940f323470b37befbc8 (diff)
parent9ec2ec222eb0fc140556a325025ae8a07d9005a0 (diff)
Merge pull request #176 from jterrace/mmap_allocate_opts
mmap and allocate optimizations
Diffstat (limited to 'src/preamble.js')
-rw-r--r--src/preamble.js7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/preamble.js b/src/preamble.js
index 0b9288c4..5c5c21ea 100644
--- a/src/preamble.js
+++ b/src/preamble.js
@@ -462,9 +462,14 @@ function allocate(slab, types, allocator) {
var ret = [_malloc, Runtime.stackAlloc, Runtime.staticAlloc][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length));
+ if (zeroinit) {
+ _memset(ret, 0, size);
+ return ret;
+ }
+
var i = 0, type;
while (i < size) {
- var curr = zeroinit ? 0 : slab[i];
+ var curr = slab[i];
if (typeof curr === 'function') {
curr = Runtime.getFunctionIndex(curr);