aboutsummaryrefslogtreecommitdiff
path: root/src/parseTools.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2011-12-10 10:37:15 -0800
committerAlon Zakai <alonzakai@gmail.com>2011-12-10 10:37:15 -0800
commitc9026478f5def2fad7ef6c3a856a5b449f4def07 (patch)
treea63dffefcebcde716082dbe4157f11ff977fe0e6 /src/parseTools.js
parent5ef5f0458be89b38b62be06d44c847b9dfd7736f (diff)
do unsigned 32-bit loads properly in ta1
Diffstat (limited to 'src/parseTools.js')
-rw-r--r--src/parseTools.js4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/parseTools.js b/src/parseTools.js
index a2f4458f..024026c8 100644
--- a/src/parseTools.js
+++ b/src/parseTools.js
@@ -1238,7 +1238,7 @@ function makeGetPos(ptr) {
return ptr;
}
-var IHEAP_FHEAP = set('IHEAP', 'FHEAP');
+var IHEAP_FHEAP = set('IHEAP', 'IHEAPU', 'FHEAP');
function makePointer(slab, pos, allocator, type) {
assert(type, 'makePointer requires type info');
@@ -1278,7 +1278,7 @@ function makeGetSlabs(ptr, type, allowMultiple, unsigned) {
if (type in Runtime.FLOAT_TYPES || type === 'int64') { // XXX should be i64, no?
return ['FHEAP']; // If USE_FHEAP is false, will fail at runtime. At compiletime we do need it for library stuff.
} else if (type in Runtime.INT_TYPES || isPointerType(type)) {
- return ['IHEAP'];
+ return [unsigned ? 'IHEAPU' : 'IHEAP'];
} else {
assert(allowMultiple, 'Unknown slab type and !allowMultiple: ' + type);
if (USE_FHEAP) {