summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2016-12-03 16:12:40 -0800
committerAlon Zakai <alonzakai@gmail.com>2016-12-07 16:50:05 -1000
commit8ce6594dc19cb3203267d1f5e8f335f0ee5a450e (patch)
tree16356346412c69b459690a2ca760d1b400a5e50f /src
parent92fb30a71c901c08bf676215efa0103cf23bcab8 (diff)
downloadbinaryen-8ce6594dc19cb3203267d1f5e8f335f0ee5a450e.tar.gz
binaryen-8ce6594dc19cb3203267d1f5e8f335f0ee5a450e.tar.bz2
binaryen-8ce6594dc19cb3203267d1f5e8f335f0ee5a450e.zip
fix legalization issues with f32s
Diffstat (limited to 'src')
-rw-r--r--src/passes/LegalizeJSInterface.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/passes/LegalizeJSInterface.cpp b/src/passes/LegalizeJSInterface.cpp
index 1c2685b10..c9cada3c0 100644
--- a/src/passes/LegalizeJSInterface.cpp
+++ b/src/passes/LegalizeJSInterface.cpp
@@ -180,7 +180,7 @@ private:
type->params.push_back(i32);
type->params.push_back(i32);
} else if (param == f32) {
- call->operands.push_back(builder.makeUnary(PromoteFloat32, builder.makeGetLocal(func->params.size(), f64)));
+ call->operands.push_back(builder.makeUnary(PromoteFloat32, builder.makeGetLocal(func->params.size(), f32)));
type->params.push_back(f64);
} else {
call->operands.push_back(builder.makeGetLocal(func->params.size(), param));
@@ -198,7 +198,7 @@ private:
type->result = i32;
} else if (im->functionType->result == f32) {
call->type = f64;
- func->body = builder.makeUnary(PromoteFloat32, call);
+ func->body = builder.makeUnary(DemoteFloat64, call);
type->result = f64;
} else {
call->type = im->functionType->result;