// 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 --stack-size=103letticks=0;functionv0(){try{v1();}catch{}// This triggers the deopt that may overflow the stack.try{undefined[null]=null;}catch{}}functionv1(){while(!v0()){// Trigger OSR early to get a crashing case asap.if(ticks==5)%OptimizeOsr();// With the bug fixed, there's no easy way to trigger termination. Instead,// run until we reach a certain number of ticks. The crash triggers locally// at tick 7562, thus running until 20k ticks to be somewhat safe.if(ticks>=20000)exit(0);ticks++;}}%PrepareFunctionForOptimization(v0);%PrepareFunctionForOptimization(v1);v0();