c7d2adc0a2
The internal index used to implement for-in can never leave the valid smi range, so there's no need to actually check for overflow in Crankshaft. In fact the overflow only triggered a false alert in the deopt fuzzer. R=jarin@chromium.org BUG=v8:3650 LOG=n Review URL: https://codereview.chromium.org/1621623002 Cr-Commit-Position: refs/heads/master@{#33456}
23 lines
575 B
JavaScript
23 lines
575 B
JavaScript
// Copyright 2016 the V8 project authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
// Flags: --allow-natives-syntax --deopt-every-n-times=55
|
|
// Flags: --nodead-code-elimination
|
|
|
|
function f(t) {
|
|
var result = [];
|
|
for (var i in t) {
|
|
for (var j in t) {
|
|
result.push(i + j + t[i] + t[j]);
|
|
continue;
|
|
}
|
|
}
|
|
return result.join('');
|
|
}
|
|
|
|
var t = {a: "1", b: "2"};
|
|
assertEquals("aa11ab12ba21bb22", f(t));
|
|
%OptimizeFunctionOnNextCall(f);
|
|
assertEquals("aa11ab12ba21bb22", f(t));
|