Chromium Code Reviews| Index: runtime/vm/intermediate_language.cc |
| diff --git a/runtime/vm/intermediate_language.cc b/runtime/vm/intermediate_language.cc |
| index 68cf40125c2256810f757cb0aa8dc01ef8ffe21c..43ce48618b512d2ff0461a004c9f56fde026b8f7 100644 |
| --- a/runtime/vm/intermediate_language.cc |
| +++ b/runtime/vm/intermediate_language.cc |
| @@ -1818,7 +1818,7 @@ RawInteger* BinaryIntegerOpInstr::Evaluate(const Integer& left, |
| if (is_truncating()) { |
| int64_t truncated = result.AsTruncatedInt64Value(); |
| truncated &= RepresentationMask(representation()); |
| - result = Integer::New(truncated); |
| + result = Integer::New(truncated, Heap::kOld); |
|
siva
2017/07/07 23:11:20
Why is it necessary to allocate in old space? the
alexmarkov
2017/07/10 16:58:12
It is a bug fix. This code is used to do constant
|
| ASSERT(IsRepresentable(result, representation())); |
| } else if (!IsRepresentable(result, representation())) { |
| // If this operation is not truncating it would deoptimize on overflow. |