2018-01-15 06:06:05 +00:00
|
|
|
// Copyright 2018 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 --enable-slow-asserts
|
|
|
|
|
|
|
|
class Base {
|
|
|
|
constructor() {
|
|
|
|
this.x = 1;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
class Derived extends Base {
|
|
|
|
constructor() {
|
|
|
|
super();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// Feed a bound function as new.target
|
|
|
|
// to the profiler, so HeapObjectMatcher
|
|
|
|
// can find it.
|
2019-06-17 16:13:52 +00:00
|
|
|
%PrepareFunctionForOptimization(Derived);
|
2018-01-15 06:06:05 +00:00
|
|
|
Reflect.construct(Derived, [], Object.bind());
|
|
|
|
%OptimizeFunctionOnNextCall(Derived);
|
|
|
|
new Derived();
|