diff options
author | Alon Zakai <alonzakai@gmail.com> | 2012-12-05 21:05:36 -0800 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2012-12-07 14:23:24 -0800 |
commit | 06fa6cfb4833dfe8044ef373f4bd47c98a8ee103 (patch) | |
tree | 8c6766b864afd500b90782f84e69e1fcc03745a6 /src/analyzer.js | |
parent | 13cd3506e7f1525aff8522db9c4541cb744083c9 (diff) |
properly legalize return
Diffstat (limited to 'src/analyzer.js')
-rw-r--r-- | src/analyzer.js | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/analyzer.js b/src/analyzer.js index 6d433c87..f917d149 100644 --- a/src/analyzer.js +++ b/src/analyzer.js @@ -347,7 +347,11 @@ function analyzer(data, sidePass) { case 'return': { bits = getBits(item.type); var elements = getLegalVars(item.value.ident, bits); - item.value.ident = '[' + elements.map(function(element) { return element.ident }).join(',') + ']'; + item.value.ident = '('; + for (var j = 1; j < elements.length; j++) { + item.value.ident += 'tempRet' + (j-1) + '=' + elements[j].ident + ','; + } + item.value.ident += elements[0].ident + ')'; i++; continue; } |