Add unit test for regression in GVN caused by field type tracking.
BUG=v8:3347 LOG=n R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/333273004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21858 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
4642c2e18c
commit
2591003da5
27
test/mjsunit/regress/regress-gvn-ftt.js
Normal file
27
test/mjsunit/regress/regress-gvn-ftt.js
Normal file
@ -0,0 +1,27 @@
|
||||
// Copyright 2014 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 --track-field-types --use-gvn
|
||||
|
||||
function A(id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
var a1 = new A(1);
|
||||
var a2 = new A(2);
|
||||
|
||||
|
||||
var g;
|
||||
function f(o, value) {
|
||||
g = o.o;
|
||||
o.o = value;
|
||||
return o.o;
|
||||
}
|
||||
|
||||
var obj = {o: a1};
|
||||
|
||||
f(obj, a1);
|
||||
f(obj, a1);
|
||||
%OptimizeFunctionOnNextCall(f);
|
||||
assertEquals(a2.id, f(obj, a2).id);
|
Loading…
Reference in New Issue
Block a user