| Index: src/code-stub-assembler.cc
|
| diff --git a/src/code-stub-assembler.cc b/src/code-stub-assembler.cc
|
| index 5dbf000c9286a012383f291f6699f1e793ab6f6f..9aa67811cd6733900a64535e097cdee9448d6fe8 100644
|
| --- a/src/code-stub-assembler.cc
|
| +++ b/src/code-stub-assembler.cc
|
| @@ -367,7 +367,9 @@
|
| Node* no_runtime_result = top;
|
| StoreNoWriteBarrier(MachineType::PointerRepresentation(), top_address,
|
| new_top);
|
| - result.Bind(BitcastWordToTagged(no_runtime_result));
|
| + no_runtime_result = BitcastWordToTagged(
|
| + IntPtrAdd(no_runtime_result, IntPtrConstant(kHeapObjectTag)));
|
| + result.Bind(no_runtime_result);
|
| Goto(&merge_runtime);
|
|
|
| Bind(&merge_runtime);
|
| @@ -385,9 +387,8 @@
|
| if (flags & kDoubleAlignment) {
|
| // TODO(epertoso): Simd128 alignment.
|
| Label aligned(this), not_aligned(this), merge(this, &adjusted_size);
|
| - Branch(WordAnd(IntPtrSub(top, IntPtrConstant(kHeapObjectTag)),
|
| - IntPtrConstant(kDoubleAlignmentMask)),
|
| - ¬_aligned, &aligned);
|
| + Branch(WordAnd(top, IntPtrConstant(kDoubleAlignmentMask)), ¬_aligned,
|
| + &aligned);
|
|
|
| Bind(¬_aligned);
|
| Node* not_aligned_size =
|
|
|