Move global V8::UseCrankshaft() into the Isolate.

R=jkummerow@chromium.org
BUG=v8:2744

Review URL: https://codereview.chromium.org/23441029

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16494 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent 625874a4
...@@ -119,7 +119,7 @@ void CompilationInfo::Initialize(Isolate* isolate, ...@@ -119,7 +119,7 @@ void CompilationInfo::Initialize(Isolate* isolate,
mode_ = STUB; mode_ = STUB;
return; return;
} }
mode_ = V8::UseCrankshaft() ? mode : NONOPT; mode_ = isolate->use_crankshaft() ? mode : NONOPT;
abort_due_to_dependency_ = false; abort_due_to_dependency_ = false;
if (script_->type()->value() == Script::TYPE_NATIVE) { if (script_->type()->value() == Script::TYPE_NATIVE) {
MarkAsNative(); MarkAsNative();
...@@ -242,7 +242,7 @@ bool CompilationInfo::ShouldSelfOptimize() { ...@@ -242,7 +242,7 @@ bool CompilationInfo::ShouldSelfOptimize() {
// break points has actually been set. // break points has actually been set.
static bool IsDebuggerActive(Isolate* isolate) { static bool IsDebuggerActive(Isolate* isolate) {
#ifdef ENABLE_DEBUGGER_SUPPORT #ifdef ENABLE_DEBUGGER_SUPPORT
return V8::UseCrankshaft() ? return isolate->use_crankshaft() ?
isolate->debug()->has_break_points() : isolate->debug()->has_break_points() :
isolate->debugger()->IsDebuggerActive(); isolate->debugger()->IsDebuggerActive();
#else #else
...@@ -310,7 +310,7 @@ static bool MakeCrankshaftCode(CompilationInfo* info) { ...@@ -310,7 +310,7 @@ static bool MakeCrankshaftCode(CompilationInfo* info) {
OptimizingCompiler::Status OptimizingCompiler::CreateGraph() { OptimizingCompiler::Status OptimizingCompiler::CreateGraph() {
ASSERT(V8::UseCrankshaft()); ASSERT(isolate()->use_crankshaft());
ASSERT(info()->IsOptimizing()); ASSERT(info()->IsOptimizing());
ASSERT(!info()->IsCompilingForDebugging()); ASSERT(!info()->IsCompilingForDebugging());
...@@ -499,7 +499,7 @@ OptimizingCompiler::Status OptimizingCompiler::GenerateAndInstallCode() { ...@@ -499,7 +499,7 @@ OptimizingCompiler::Status OptimizingCompiler::GenerateAndInstallCode() {
static bool GenerateCode(CompilationInfo* info) { static bool GenerateCode(CompilationInfo* info) {
bool is_optimizing = V8::UseCrankshaft() && bool is_optimizing = info->isolate()->use_crankshaft() &&
!info->IsCompilingForDebugging() && !info->IsCompilingForDebugging() &&
info->IsOptimizing(); info->IsOptimizing();
if (is_optimizing) { if (is_optimizing) {
...@@ -838,7 +838,7 @@ static bool InstallFullCode(CompilationInfo* info) { ...@@ -838,7 +838,7 @@ static bool InstallFullCode(CompilationInfo* info) {
shared->set_dont_inline(lit->flags()->Contains(kDontInline)); shared->set_dont_inline(lit->flags()->Contains(kDontInline));
shared->set_ast_node_count(lit->ast_node_count()); shared->set_ast_node_count(lit->ast_node_count());
if (V8::UseCrankshaft() && if (info->isolate()->use_crankshaft() &&
!function.is_null() && !function.is_null() &&
!shared->optimization_disabled()) { !shared->optimization_disabled()) {
// If we're asked to always optimize, we compile the optimized // If we're asked to always optimize, we compile the optimized
......
...@@ -335,7 +335,7 @@ class CompilationInfo { ...@@ -335,7 +335,7 @@ class CompilationInfo {
void Initialize(Isolate* isolate, Mode mode, Zone* zone); void Initialize(Isolate* isolate, Mode mode, Zone* zone);
void SetMode(Mode mode) { void SetMode(Mode mode) {
ASSERT(V8::UseCrankshaft()); ASSERT(isolate()->use_crankshaft());
mode_ = mode; mode_ = mode;
} }
......
...@@ -664,7 +664,7 @@ Handle<JSFunction> Factory::NewFunctionFromSharedFunctionInfo( ...@@ -664,7 +664,7 @@ Handle<JSFunction> Factory::NewFunctionFromSharedFunctionInfo(
return result; return result;
} }
if (V8::UseCrankshaft() && if (isolate()->use_crankshaft() &&
FLAG_always_opt && FLAG_always_opt &&
result->is_compiled() && result->is_compiled() &&
!function_info->is_toplevel() && !function_info->is_toplevel() &&
......
...@@ -1793,6 +1793,7 @@ Isolate::Isolate() ...@@ -1793,6 +1793,7 @@ Isolate::Isolate()
regexp_stack_(NULL), regexp_stack_(NULL),
date_cache_(NULL), date_cache_(NULL),
code_stub_interface_descriptors_(NULL), code_stub_interface_descriptors_(NULL),
use_crankshaft_(true),
initialized_from_snapshot_(false), initialized_from_snapshot_(false),
cpu_profiler_(NULL), cpu_profiler_(NULL),
heap_profiler_(NULL), heap_profiler_(NULL),
...@@ -2148,6 +2149,10 @@ bool Isolate::Init(Deserializer* des) { ...@@ -2148,6 +2149,10 @@ bool Isolate::Init(Deserializer* des) {
stress_deopt_count_ = FLAG_deopt_every_n_times; stress_deopt_count_ = FLAG_deopt_every_n_times;
use_crankshaft_ = FLAG_crankshaft
&& !Serializer::enabled()
&& CPU::SupportsCrankshaft();
if (function_entry_hook() != NULL) { if (function_entry_hook() != NULL) {
// When function entry hooking is in effect, we have to create the code // When function entry hooking is in effect, we have to create the code
// stubs from scratch to get entry hooks, rather than loading the previously // stubs from scratch to get entry hooks, rather than loading the previously
......
...@@ -1059,6 +1059,8 @@ class Isolate { ...@@ -1059,6 +1059,8 @@ class Isolate {
thread_local_top_.top_lookup_result_ = top; thread_local_top_.top_lookup_result_ = top;
} }
bool use_crankshaft() const { return use_crankshaft_; }
bool initialized_from_snapshot() { return initialized_from_snapshot_; } bool initialized_from_snapshot() { return initialized_from_snapshot_; }
double time_millis_since_init() { double time_millis_since_init() {
...@@ -1300,6 +1302,9 @@ class Isolate { ...@@ -1300,6 +1302,9 @@ class Isolate {
unibrow::Mapping<unibrow::Ecma262Canonicalize> interp_canonicalize_mapping_; unibrow::Mapping<unibrow::Ecma262Canonicalize> interp_canonicalize_mapping_;
CodeStubInterfaceDescriptor* code_stub_interface_descriptors_; CodeStubInterfaceDescriptor* code_stub_interface_descriptors_;
// True if we are using the Crankshaft optimizing compiler.
bool use_crankshaft_;
// True if this isolate was initialized from a snapshot. // True if this isolate was initialized from a snapshot.
bool initialized_from_snapshot_; bool initialized_from_snapshot_;
......
...@@ -8352,7 +8352,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_InstallRecompiledCode) { ...@@ -8352,7 +8352,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_InstallRecompiledCode) {
HandleScope handle_scope(isolate); HandleScope handle_scope(isolate);
ASSERT(args.length() == 1); ASSERT(args.length() == 1);
CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0); CONVERT_ARG_HANDLE_CHECKED(JSFunction, function, 0);
ASSERT(V8::UseCrankshaft() && FLAG_concurrent_recompilation); ASSERT(isolate->use_crankshaft() && FLAG_concurrent_recompilation);
isolate->optimizing_compiler_thread()->InstallOptimizedFunctions(); isolate->optimizing_compiler_thread()->InstallOptimizedFunctions();
return function->code(); return function->code();
} }
...@@ -8538,7 +8538,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NeverOptimizeFunction) { ...@@ -8538,7 +8538,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_NeverOptimizeFunction) {
RUNTIME_FUNCTION(MaybeObject*, Runtime_GetOptimizationStatus) { RUNTIME_FUNCTION(MaybeObject*, Runtime_GetOptimizationStatus) {
HandleScope scope(isolate); HandleScope scope(isolate);
RUNTIME_ASSERT(args.length() == 1 || args.length() == 2); RUNTIME_ASSERT(args.length() == 1 || args.length() == 2);
if (!V8::UseCrankshaft()) { if (!isolate->use_crankshaft()) {
return Smi::FromInt(4); // 4 == "never". return Smi::FromInt(4); // 4 == "never".
} }
bool sync_with_compiler_thread = true; bool sync_with_compiler_thread = true;
......
...@@ -53,7 +53,6 @@ V8_DECLARE_ONCE(init_once); ...@@ -53,7 +53,6 @@ V8_DECLARE_ONCE(init_once);
bool V8::has_been_set_up_ = false; bool V8::has_been_set_up_ = false;
bool V8::has_been_disposed_ = false; bool V8::has_been_disposed_ = false;
bool V8::has_fatal_error_ = false; bool V8::has_fatal_error_ = false;
bool V8::use_crankshaft_ = true;
List<CallCompletedCallback>* V8::call_completed_callbacks_ = NULL; List<CallCompletedCallback>* V8::call_completed_callbacks_ = NULL;
v8::ArrayBuffer::Allocator* V8::array_buffer_allocator_ = NULL; v8::ArrayBuffer::Allocator* V8::array_buffer_allocator_ = NULL;
...@@ -314,9 +313,6 @@ void V8::InitializeOncePerProcessImpl() { ...@@ -314,9 +313,6 @@ void V8::InitializeOncePerProcessImpl() {
OS::SetUp(); OS::SetUp();
Sampler::SetUp(); Sampler::SetUp();
CPU::SetUp(); CPU::SetUp();
use_crankshaft_ = FLAG_crankshaft
&& !Serializer::enabled()
&& CPU::SupportsCrankshaft();
OS::PostSetUp(); OS::PostSetUp();
ElementsAccessor::InitializeOncePerProcess(); ElementsAccessor::InitializeOncePerProcess();
LOperand::SetUpCaches(); LOperand::SetUpCaches();
......
...@@ -82,7 +82,6 @@ class V8 : public AllStatic { ...@@ -82,7 +82,6 @@ class V8 : public AllStatic {
// empty heap. // empty heap.
static bool Initialize(Deserializer* des); static bool Initialize(Deserializer* des);
static void TearDown(); static void TearDown();
static bool UseCrankshaft() { return use_crankshaft_; }
// To be dead you have to have lived // To be dead you have to have lived
// TODO(isolates): move IsDead to Isolate. // TODO(isolates): move IsDead to Isolate.
static bool IsDead() { return has_fatal_error_ || has_been_disposed_; } static bool IsDead() { return has_fatal_error_ || has_been_disposed_; }
...@@ -138,8 +137,6 @@ class V8 : public AllStatic { ...@@ -138,8 +137,6 @@ class V8 : public AllStatic {
// True if engine has been shut down // True if engine has been shut down
// (reset if engine is restarted) // (reset if engine is restarted)
static bool has_been_disposed_; static bool has_been_disposed_;
// True if we are using the crankshaft optimizing compiler.
static bool use_crankshaft_;
// List of callbacks when a Call completes. // List of callbacks when a Call completes.
static List<CallCompletedCallback>* call_completed_callbacks_; static List<CallCompletedCallback>* call_completed_callbacks_;
// Allocator for external array buffers. // Allocator for external array buffers.
......
...@@ -367,7 +367,7 @@ TEST(DeoptimizeBinaryOperationADDString) { ...@@ -367,7 +367,7 @@ TEST(DeoptimizeBinaryOperationADDString) {
i::FLAG_always_opt = true; i::FLAG_always_opt = true;
CompileRun(f_source); CompileRun(f_source);
CompileRun("f('a+', new X());"); CompileRun("f('a+', new X());");
CHECK(!i::V8::UseCrankshaft() || CHECK(!i::Isolate::Current()->use_crankshaft() ||
GetJSFunction(env->Global(), "f")->IsOptimized()); GetJSFunction(env->Global(), "f")->IsOptimized());
// Call f and force deoptimization while processing the binary operation. // Call f and force deoptimization while processing the binary operation.
...@@ -419,7 +419,7 @@ static void TestDeoptimizeBinaryOpHelper(LocalContext* env, ...@@ -419,7 +419,7 @@ static void TestDeoptimizeBinaryOpHelper(LocalContext* env,
i::FLAG_always_opt = true; i::FLAG_always_opt = true;
CompileRun(f_source); CompileRun(f_source);
CompileRun("f(7, new X());"); CompileRun("f(7, new X());");
CHECK(!i::V8::UseCrankshaft() || CHECK(!i::Isolate::Current()->use_crankshaft() ||
GetJSFunction((*env)->Global(), "f")->IsOptimized()); GetJSFunction((*env)->Global(), "f")->IsOptimized());
// Call f and force deoptimization while processing the binary operation. // Call f and force deoptimization while processing the binary operation.
...@@ -517,7 +517,7 @@ TEST(DeoptimizeCompare) { ...@@ -517,7 +517,7 @@ TEST(DeoptimizeCompare) {
i::FLAG_always_opt = true; i::FLAG_always_opt = true;
CompileRun(f_source); CompileRun(f_source);
CompileRun("f('a', new X());"); CompileRun("f('a', new X());");
CHECK(!i::V8::UseCrankshaft() || CHECK(!i::Isolate::Current()->use_crankshaft() ||
GetJSFunction(env->Global(), "f")->IsOptimized()); GetJSFunction(env->Global(), "f")->IsOptimized());
// Call f and force deoptimization while processing the comparison. // Call f and force deoptimization while processing the comparison.
...@@ -587,7 +587,7 @@ TEST(DeoptimizeLoadICStoreIC) { ...@@ -587,7 +587,7 @@ TEST(DeoptimizeLoadICStoreIC) {
CompileRun("g1(new X());"); CompileRun("g1(new X());");
CompileRun("f2(new X(), 'z');"); CompileRun("f2(new X(), 'z');");
CompileRun("g2(new X(), 'z');"); CompileRun("g2(new X(), 'z');");
if (i::V8::UseCrankshaft()) { if (i::Isolate::Current()->use_crankshaft()) {
CHECK(GetJSFunction(env->Global(), "f1")->IsOptimized()); CHECK(GetJSFunction(env->Global(), "f1")->IsOptimized());
CHECK(GetJSFunction(env->Global(), "g1")->IsOptimized()); CHECK(GetJSFunction(env->Global(), "g1")->IsOptimized());
CHECK(GetJSFunction(env->Global(), "f2")->IsOptimized()); CHECK(GetJSFunction(env->Global(), "f2")->IsOptimized());
...@@ -671,7 +671,7 @@ TEST(DeoptimizeLoadICStoreICNested) { ...@@ -671,7 +671,7 @@ TEST(DeoptimizeLoadICStoreICNested) {
CompileRun("g1(new X());"); CompileRun("g1(new X());");
CompileRun("f2(new X(), 'z');"); CompileRun("f2(new X(), 'z');");
CompileRun("g2(new X(), 'z');"); CompileRun("g2(new X(), 'z');");
if (i::V8::UseCrankshaft()) { if (i::Isolate::Current()->use_crankshaft()) {
CHECK(GetJSFunction(env->Global(), "f1")->IsOptimized()); CHECK(GetJSFunction(env->Global(), "f1")->IsOptimized());
CHECK(GetJSFunction(env->Global(), "g1")->IsOptimized()); CHECK(GetJSFunction(env->Global(), "g1")->IsOptimized());
CHECK(GetJSFunction(env->Global(), "f2")->IsOptimized()); CHECK(GetJSFunction(env->Global(), "f2")->IsOptimized());
......
...@@ -1335,7 +1335,7 @@ TEST(TestInternalWeakLists) { ...@@ -1335,7 +1335,7 @@ TEST(TestInternalWeakLists) {
isolate->compilation_cache()->Clear(); isolate->compilation_cache()->Clear();
heap->CollectAllGarbage(Heap::kNoGCFlags); heap->CollectAllGarbage(Heap::kNoGCFlags);
bool opt = (FLAG_always_opt && i::V8::UseCrankshaft()); bool opt = (FLAG_always_opt && isolate->use_crankshaft());
CHECK_EQ(i + 1, CountNativeContexts()); CHECK_EQ(i + 1, CountNativeContexts());
...@@ -1479,7 +1479,7 @@ TEST(TestInternalWeakListsTraverseWithGC) { ...@@ -1479,7 +1479,7 @@ TEST(TestInternalWeakListsTraverseWithGC) {
CHECK_EQ(i + 1, CountNativeContextsWithGC(isolate, i / 2 + 1)); CHECK_EQ(i + 1, CountNativeContextsWithGC(isolate, i / 2 + 1));
} }
bool opt = (FLAG_always_opt && i::V8::UseCrankshaft()); bool opt = (FLAG_always_opt && isolate->use_crankshaft());
// Compile a number of functions the length of the weak list of optimized // Compile a number of functions the length of the weak list of optimized
// functions both with and without GCs while iterating the list. // functions both with and without GCs while iterating the list.
...@@ -1879,7 +1879,7 @@ TEST(InstanceOfStubWriteBarrier) { ...@@ -1879,7 +1879,7 @@ TEST(InstanceOfStubWriteBarrier) {
#endif #endif
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft()) return; if (!i::Isolate::Current()->use_crankshaft()) return;
if (i::FLAG_force_marking_deque_overflows) return; if (i::FLAG_force_marking_deque_overflows) return;
v8::HandleScope outer_scope(v8::Isolate::GetCurrent()); v8::HandleScope outer_scope(v8::Isolate::GetCurrent());
...@@ -1996,7 +1996,7 @@ TEST(ResetSharedFunctionInfoCountersDuringIncrementalMarking) { ...@@ -1996,7 +1996,7 @@ TEST(ResetSharedFunctionInfoCountersDuringIncrementalMarking) {
#endif #endif
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft()) return; if (!i::Isolate::Current()->use_crankshaft()) return;
v8::HandleScope outer_scope(v8::Isolate::GetCurrent()); v8::HandleScope outer_scope(v8::Isolate::GetCurrent());
{ {
...@@ -2053,7 +2053,7 @@ TEST(ResetSharedFunctionInfoCountersDuringMarkSweep) { ...@@ -2053,7 +2053,7 @@ TEST(ResetSharedFunctionInfoCountersDuringMarkSweep) {
#endif #endif
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft()) return; if (!i::Isolate::Current()->use_crankshaft()) return;
v8::HandleScope outer_scope(CcTest::isolate()); v8::HandleScope outer_scope(CcTest::isolate());
{ {
...@@ -2092,7 +2092,7 @@ TEST(ResetSharedFunctionInfoCountersDuringMarkSweep) { ...@@ -2092,7 +2092,7 @@ TEST(ResetSharedFunctionInfoCountersDuringMarkSweep) {
TEST(OptimizedAllocationAlwaysInNewSpace) { TEST(OptimizedAllocationAlwaysInNewSpace) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
...@@ -2121,7 +2121,7 @@ TEST(OptimizedAllocationAlwaysInNewSpace) { ...@@ -2121,7 +2121,7 @@ TEST(OptimizedAllocationAlwaysInNewSpace) {
TEST(OptimizedPretenuringAllocationFolding) { TEST(OptimizedPretenuringAllocationFolding) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
HEAP->SetNewSpaceHighPromotionModeActive(true); HEAP->SetNewSpaceHighPromotionModeActive(true);
...@@ -2157,7 +2157,7 @@ TEST(OptimizedPretenuringAllocationFolding) { ...@@ -2157,7 +2157,7 @@ TEST(OptimizedPretenuringAllocationFolding) {
TEST(OptimizedPretenuringAllocationFoldingBlocks) { TEST(OptimizedPretenuringAllocationFoldingBlocks) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
HEAP->SetNewSpaceHighPromotionModeActive(true); HEAP->SetNewSpaceHighPromotionModeActive(true);
...@@ -2193,7 +2193,7 @@ TEST(OptimizedPretenuringAllocationFoldingBlocks) { ...@@ -2193,7 +2193,7 @@ TEST(OptimizedPretenuringAllocationFoldingBlocks) {
TEST(OptimizedPretenuringObjectArrayLiterals) { TEST(OptimizedPretenuringObjectArrayLiterals) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
HEAP->SetNewSpaceHighPromotionModeActive(true); HEAP->SetNewSpaceHighPromotionModeActive(true);
...@@ -2218,7 +2218,7 @@ TEST(OptimizedPretenuringObjectArrayLiterals) { ...@@ -2218,7 +2218,7 @@ TEST(OptimizedPretenuringObjectArrayLiterals) {
TEST(OptimizedPretenuringMixedInObjectProperties) { TEST(OptimizedPretenuringMixedInObjectProperties) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
HEAP->SetNewSpaceHighPromotionModeActive(true); HEAP->SetNewSpaceHighPromotionModeActive(true);
...@@ -2249,7 +2249,7 @@ TEST(OptimizedPretenuringMixedInObjectProperties) { ...@@ -2249,7 +2249,7 @@ TEST(OptimizedPretenuringMixedInObjectProperties) {
TEST(OptimizedPretenuringDoubleArrayProperties) { TEST(OptimizedPretenuringDoubleArrayProperties) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
HEAP->SetNewSpaceHighPromotionModeActive(true); HEAP->SetNewSpaceHighPromotionModeActive(true);
...@@ -2274,7 +2274,7 @@ TEST(OptimizedPretenuringDoubleArrayProperties) { ...@@ -2274,7 +2274,7 @@ TEST(OptimizedPretenuringDoubleArrayProperties) {
TEST(OptimizedPretenuringdoubleArrayLiterals) { TEST(OptimizedPretenuringdoubleArrayLiterals) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
HEAP->SetNewSpaceHighPromotionModeActive(true); HEAP->SetNewSpaceHighPromotionModeActive(true);
...@@ -2299,7 +2299,7 @@ TEST(OptimizedPretenuringdoubleArrayLiterals) { ...@@ -2299,7 +2299,7 @@ TEST(OptimizedPretenuringdoubleArrayLiterals) {
TEST(OptimizedPretenuringNestedMixedArrayLiterals) { TEST(OptimizedPretenuringNestedMixedArrayLiterals) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
HEAP->SetNewSpaceHighPromotionModeActive(true); HEAP->SetNewSpaceHighPromotionModeActive(true);
...@@ -2333,7 +2333,7 @@ TEST(OptimizedPretenuringNestedMixedArrayLiterals) { ...@@ -2333,7 +2333,7 @@ TEST(OptimizedPretenuringNestedMixedArrayLiterals) {
TEST(OptimizedPretenuringNestedObjectLiterals) { TEST(OptimizedPretenuringNestedObjectLiterals) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
HEAP->SetNewSpaceHighPromotionModeActive(true); HEAP->SetNewSpaceHighPromotionModeActive(true);
...@@ -2367,7 +2367,7 @@ TEST(OptimizedPretenuringNestedObjectLiterals) { ...@@ -2367,7 +2367,7 @@ TEST(OptimizedPretenuringNestedObjectLiterals) {
TEST(OptimizedPretenuringNestedDoubleLiterals) { TEST(OptimizedPretenuringNestedDoubleLiterals) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
HEAP->SetNewSpaceHighPromotionModeActive(true); HEAP->SetNewSpaceHighPromotionModeActive(true);
...@@ -2404,7 +2404,7 @@ TEST(OptimizedPretenuringNestedDoubleLiterals) { ...@@ -2404,7 +2404,7 @@ TEST(OptimizedPretenuringNestedDoubleLiterals) {
TEST(OptimizedAllocationArrayLiterals) { TEST(OptimizedAllocationArrayLiterals) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
...@@ -2431,7 +2431,7 @@ TEST(OptimizedPretenuringCallNew) { ...@@ -2431,7 +2431,7 @@ TEST(OptimizedPretenuringCallNew) {
i::FLAG_allow_natives_syntax = true; i::FLAG_allow_natives_syntax = true;
i::FLAG_pretenuring_call_new = true; i::FLAG_pretenuring_call_new = true;
CcTest::InitializeVM(); CcTest::InitializeVM();
if (!i::V8::UseCrankshaft() || i::FLAG_always_opt) return; if (!i::Isolate::Current()->use_crankshaft() || i::FLAG_always_opt) return;
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return; if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
v8::HandleScope scope(CcTest::isolate()); v8::HandleScope scope(CcTest::isolate());
HEAP->SetNewSpaceHighPromotionModeActive(true); HEAP->SetNewSpaceHighPromotionModeActive(true);
......
...@@ -69,7 +69,7 @@ void TestSeeds(Handle<JSFunction> fun, ...@@ -69,7 +69,7 @@ void TestSeeds(Handle<JSFunction> fun,
TEST(CrankshaftRandom) { TEST(CrankshaftRandom) {
v8::V8::Initialize(); v8::V8::Initialize();
// Skip test if crankshaft is disabled. // Skip test if crankshaft is disabled.
if (!V8::UseCrankshaft()) return; if (!Isolate::Current()->use_crankshaft()) return;
v8::Isolate* isolate = v8::Isolate::GetCurrent(); v8::Isolate* isolate = v8::Isolate::GetCurrent();
v8::HandleScope scope(isolate); v8::HandleScope scope(isolate);
v8::Context::Scope context_scope(v8::Context::New(isolate)); v8::Context::Scope context_scope(v8::Context::New(isolate));
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment