v8/test/mjsunit/regress/regress-crbug-1236286.js
Georg Neis a6f3fce3c5 Fix a DCHECK failure with broken asm.js functions
Fixed: chromium:1236286
Change-Id: I90106fce4d6e747f35c638ab00bf9a1696c8eb77
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3109668
Commit-Queue: Georg Neis <neis@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/main@{#76462}
2021-08-24 13:38:24 +00:00

21 lines
550 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 --fuzzing
// Without --fuzzing, %PrepareFunctionForOptimization would fail.
for (let i = 0; i < 2; i++) {
try { new this.invalid(); } catch {}
function invalid(x) {
"use asm";
var y = x.Math.fround;
function foo() {}
return {foo: foo};
}
%PrepareFunctionForOptimization(invalid);
%OptimizeFunctionOnNextCall(invalid);
}