| // Copyright 2017 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 --noalways-opt |
| %PrepareFunctionForOptimization(g1); |
| %OptimizeFunctionOnNextCall(g1); |
| %PrepareFunctionForOptimization(g2); |
| %OptimizeFunctionOnNextCall(g2); |
| if (%DynamicMapChecksEnabled()) { |
| // One more call to ensure a deopt even if dynamic map checks is enabled. |
| // Deoptimization of g1 should also deoptimize g2 because they should share |
| // the optimized code object. (Unfortunately, this test bakes in various |
| // other assumptions about dealing with optimized code, and thus might break |