Skip to content
Snippets Groups Projects
Commit 030e506c authored by Lukas Lihotzki's avatar Lukas Lihotzki
Browse files

use stackAlloc instead of allocate

parent 22f85d3f
No related branches found
No related tags found
No related merge requests found
......@@ -2,12 +2,20 @@ var malloc = Module['_malloc'];
var free = Module['_free'];
var OLM_ERROR;
function filled_stack(size, filler) {
var ptr = stackAlloc(size);
filler(new Uint8Array(Module['HEAPU8'].buffer, ptr, size));
return ptr;
}
/* allocate a number of bytes of storage on the stack.
*
* If size_or_array is a Number, allocates that number of zero-initialised bytes.
*/
function stack(size_or_array) {
return allocate(size_or_array, 'i8', Module['ALLOC_STACK']);
return (typeof size_or_array == 'number')
? filled_stack(size_or_array, function(x) { x.fill(0) })
: filled_stack(size_or_array.length, function(x) { x.set(size_or_array) });
}
function array_from_string(string) {
......@@ -15,10 +23,7 @@ function array_from_string(string) {
}
function random_stack(size) {
var ptr = stack(size);
var array = new Uint8Array(Module['HEAPU8'].buffer, ptr, size);
get_random_values(array);
return ptr;
return filled_stack(size, get_random_values);
}
function restore_stack(wrapped) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment