diff options
author | Alon Zakai <alonzakai@gmail.com> | 2011-12-30 18:30:48 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2011-12-30 18:30:48 -0800 |
commit | 8608b60d2deecf8a042d4f8ca4237aeb23f3c63a (patch) | |
tree | c37729ce196fe2bc2af1abb756371513e2d6fb2b | |
parent | 2eec25eab19a07f700c807fa7a62668e77fbaf34 (diff) |
makeSetValue debugging stuff, and fix some missing ;'s for makeSetValue
-rw-r--r-- | src/jsifier.js | 2 | ||||
-rw-r--r-- | src/library.js | 8 | ||||
-rw-r--r-- | src/parseTools.js | 2 |
3 files changed, 7 insertions, 5 deletions
diff --git a/src/jsifier.js b/src/jsifier.js index 3635bd51..b06b4334 100644 --- a/src/jsifier.js +++ b/src/jsifier.js @@ -302,7 +302,7 @@ function JSify(data, functionsOnly, givenFunctions) { if (needsPostSet(value)) { // ident, or expression containing an ident ret.push({ intertype: 'GlobalVariablePostSet', - JS: makeSetValue(item.ident, i, value, 'i32', false, true) // ignore=true, since e.g. rtti and statics cause lots of safe_heap errors + JS: makeSetValue(item.ident, i, value, 'i32', false, true) + ';' // ignore=true, since e.g. rtti and statics cause lots of safe_heap errors }); constant[i] = '0'; } diff --git a/src/library.js b/src/library.js index f3f86d8a..b2d08f39 100644 --- a/src/library.js +++ b/src/library.js @@ -3517,13 +3517,13 @@ LibraryManager.library = { for (var i = 0; i < strings.length; i++) { var line = strings[i]; for (var j = 0; j < line.length; j++) { - {{{ makeSetValue('poolPtr', 'j', 'line.charCodeAt(j)', 'i8') }}} + {{{ makeSetValue('poolPtr', 'j', 'line.charCodeAt(j)', 'i8') }}}; } - {{{ makeSetValue('poolPtr', 'j', '0', 'i8') }}} - {{{ makeSetValue('envPtr', 'i * ptrSize', 'poolPtr', 'i8*') }}} + {{{ makeSetValue('poolPtr', 'j', '0', 'i8') }}}; + {{{ makeSetValue('envPtr', 'i * ptrSize', 'poolPtr', 'i8*') }}}; poolPtr += line.length + 1; } - {{{ makeSetValue('envPtr', 'strings.length * ptrSize', '0', 'i8*') }}} + {{{ makeSetValue('envPtr', 'strings.length * ptrSize', '0', 'i8*') }}}; }, $ENV__deps: ['__buildEnvironment'], $ENV__postset: '___buildEnvironment(ENV);', diff --git a/src/parseTools.js b/src/parseTools.js index 48c96c98..7f837419 100644 --- a/src/parseTools.js +++ b/src/parseTools.js @@ -1026,6 +1026,8 @@ function makeSetValue(ptr, pos, value, type, noNeedFirst, ignore, align, noSafe) return 'SAFE_HEAP_STORE(' + offset + ', ' + value + ', ' + type + ', ' + ((!checkSafeHeap() || ignore)|0) + ')'; } else { return makeGetSlabs(ptr, type, true).map(function(slab) { return slab + '[' + getHeapOffset(offset, type) + ']=' + value }).join('; '); + //return '(print("set:"+(' + value + ')+":"+(' + getHeapOffset(offset, type) + ')),' + + // makeGetSlabs(ptr, type, true).map(function(slab) { return slab + '[' + getHeapOffset(offset, type) + ']=' + value }).join('; ') + ')'; } } |