aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2011-11-10 13:36:13 -0800
committerAlon Zakai <alonzakai@gmail.com>2011-11-10 13:36:13 -0800
commit008d2433826b0ac7d4bdd5556bd4c6b4f1351c73 (patch)
tree078b3d833e98d3dd21bce1fbc6bd87b64516f356 /src
parentbbefb9fb22982d5ed712f8eb9664fef8d278c4b1 (diff)
more i64 fixes and tests
Diffstat (limited to 'src')
-rw-r--r--src/intertyper.js2
-rw-r--r--src/jsifier.js2
2 files changed, 3 insertions, 1 deletions
diff --git a/src/intertyper.js b/src/intertyper.js
index 0f41f20f..b8100913 100644
--- a/src/intertyper.js
+++ b/src/intertyper.js
@@ -762,6 +762,8 @@ function intertyper(data, parseFunctions, baseLineNum) {
// Some specific corrections, since 'i64' is special
if (item.op in LLVM.SHIFTS) {
item.param2.type = 'i32';
+ } else if (item.op == 'select') {
+ item.param1.type = 'i1';
}
}
}
diff --git a/src/jsifier.js b/src/jsifier.js
index b362009d..a12bf883 100644
--- a/src/jsifier.js
+++ b/src/jsifier.js
@@ -848,7 +848,7 @@ function JSify(data, functionsOnly, givenFunctions, givenGlobalVariables) {
var val = finalizeParam(param);
if (!func || !func.hasVarArgs || i < func.numParams-1 || useJSArgs) {
if (param.type == 'i64' && I64_MODE == 1) {
- val = makeI64Copy(val); // Must copy [low, high] i64s, so they don't end up modified in the caller
+ val = makeCopyI64(val); // Must copy [low, high] i64s, so they don't end up modified in the caller
}
args.push(val);
argsTypes.push(param.type);