v8/test/mjsunit/regress/regress-1212244.js
Ross McIlroy 1dd70d42b7 [compiler] Add back EarlyGraphTrimming.
Trimming is required before the Typer phase to ensure that all nodes
that might be reached via use links have been typed.

Add this phase back on the (background thread) OptimizeGraph
step instead of the (main-thread) CreateGraph phase since there
is no need to do it on the main thread.

BUG=chromium:1212244

Change-Id: I136aadb62d623c8f1898e4e9c0441266d5690be6
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2912709
Reviewed-by: Georg Neis <neis@chromium.org>
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#74733}
2021-05-25 09:06:42 +00:00

31 lines
681 B
JavaScript

// Copyright 2021 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 --no-turbo-loop-peeling
function foo(base) {
class klass extends base {
constructor() {
try {
undefined();
} catch (e) {}
super();
this.d = 4.2;
this.o = {};
}
}
var __v_58 = new klass();
var __v_59 = new klass();
}
%PrepareFunctionForOptimization(foo);
foo(Uint8Array);
foo(Uint8ClampedArray);
foo(Int16Array);
foo(Uint16Array);
foo(Int32Array);
foo(Uint32Array);
%OptimizeFunctionOnNextCall(foo);
assertThrows(foo);