1 // Copyright 2010 the V8 project authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef V8_V8_TEST_H_ 6 #define V8_V8_TEST_H_ 7 8 #include "v8.h" // NOLINT(build/include) 9 10 /** 11 * Testing support for the V8 JavaScript engine. 12 */ 13 namespace v8 { 14 15 class V8_EXPORT Testing { 16 public: 17 enum StressType { 18 kStressTypeOpt, 19 kStressTypeDeopt 20 }; 21 22 /** 23 * Set the type of stressing to do. The default if not set is kStressTypeOpt. 24 */ 25 static void SetStressRunType(StressType type); 26 27 /** 28 * Get the number of runs of a given test that is required to get the full 29 * stress coverage. 30 */ 31 static int GetStressRuns(); 32 33 /** 34 * Indicate the number of the run which is about to start. The value of run 35 * should be between 0 and one less than the result from GetStressRuns() 36 */ 37 static void PrepareStressRun(int run); 38 39 /** 40 * Force deoptimization of all functions. 41 */ 42 static void DeoptimizeAll(Isolate* isolate); 43 }; 44 45 46 } // namespace v8 47 48 #endif // V8_V8_TEST_H_ 49