21e7f08385
... in order to avoid the need to update field types through elements kind transitions. Bug: chromium:738763, chromium:745844 Change-Id: I9f0e7f321e7f44ab5b36c06dd4c5633611370807 Reviewed-on: https://chromium-review.googlesource.com/581647 Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#46830}
26 lines
532 B
JavaScript
26 lines
532 B
JavaScript
// Copyright 2017 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: --verify-heap --allow-natives-syntax --expose-gc
|
|
|
|
let constant = { a: 1 };
|
|
|
|
function update_array(array) {
|
|
array.x = constant;
|
|
%HeapObjectVerify(array);
|
|
array[0] = undefined;
|
|
%HeapObjectVerify(array);
|
|
return array;
|
|
}
|
|
|
|
let ar1 = [1];
|
|
let ar2 = [2];
|
|
let ar3 = [3];
|
|
gc();
|
|
gc();
|
|
|
|
update_array(ar1);
|
|
constant = update_array(ar2);
|
|
update_array(ar3);
|