summaryrefslogtreecommitdiff
path: root/src/passes/I64ToI32Lowering.cpp
diff options
context:
space:
mode:
authorHeejin Ahn <aheejin@gmail.com>2019-04-30 14:52:55 -0700
committerHeejin Ahn <aheejin@gmail.com>2019-04-30 14:52:55 -0700
commita81f5cb4201a9569c80e101e5e86dcd7aa320943 (patch)
tree00ee6563cc5c502d821c503ad8ef0e75a064bf17 /src/passes/I64ToI32Lowering.cpp
parent3399f8853ece7e9945a696f5d2ff7e1dc906faa4 (diff)
parent06f659ccea289ba25a96b3877f1458c835c7f43b (diff)
downloadbinaryen-a81f5cb4201a9569c80e101e5e86dcd7aa320943.tar.gz
binaryen-a81f5cb4201a9569c80e101e5e86dcd7aa320943.tar.bz2
binaryen-a81f5cb4201a9569c80e101e5e86dcd7aa320943.zip
Merge branch 'master' into clang_tidy_hook
Diffstat (limited to 'src/passes/I64ToI32Lowering.cpp')
-rw-r--r--src/passes/I64ToI32Lowering.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/passes/I64ToI32Lowering.cpp b/src/passes/I64ToI32Lowering.cpp
index e2d3cc414..26f40c284 100644
--- a/src/passes/I64ToI32Lowering.cpp
+++ b/src/passes/I64ToI32Lowering.cpp
@@ -366,7 +366,7 @@ struct I64ToI32Lowering : public WalkerPass<PostWalker<I64ToI32Lowering>> {
builder->makeLoad(4,
curr->signed_,
curr->offset + 4,
- 1,
+ std::min(uint32_t(curr->align), uint32_t(4)),
builder->makeGetLocal(ptrTemp, i32),
i32));
} else if (curr->signed_) {
@@ -409,7 +409,7 @@ struct I64ToI32Lowering : public WalkerPass<PostWalker<I64ToI32Lowering>> {
Store* storeHigh =
builder->makeStore(4,
curr->offset + 4,
- 1,
+ std::min(uint32_t(curr->align), uint32_t(4)),
builder->makeGetLocal(ptrTemp, i32),
builder->makeGetLocal(highBits, i32),
i32);