diff options
Diffstat (limited to 'src/preamble.js')
-rw-r--r-- | src/preamble.js | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/preamble.js b/src/preamble.js index d70ef4b1..d415b87e 100644 --- a/src/preamble.js +++ b/src/preamble.js @@ -189,13 +189,16 @@ function SAFE_HEAP_STORE(dest, value, bytes, isFloat) { setValue(dest, value, getSafeHeapType(bytes, isFloat), 1); } -function SAFE_HEAP_LOAD(dest, bytes, isFloat) { +function SAFE_HEAP_LOAD(dest, bytes, isFloat, unsigned) { #if SAFE_HEAP_LOG - Module.print('SAFE_HEAP load: ' + [dest, bytes, isFloat]); + Module.print('SAFE_HEAP load: ' + [dest, bytes, isFloat, unsigned]); #endif assert(dest > 0, 'segmentation fault'); assert(dest % bytes === 0); - return getValue(dest, getSafeHeapType(bytes, isFloat), 1); + var type = getSafeHeapType(bytes, isFloat); + var ret = getValue(dest, type, 1); + if (unsigned) ret = unSign(ret, parseInt(type.substr(1)), 1); + return ret; } #endif |