Remove crankshaft flag.
Crankshaft flag and opt flag mostly serve the same purpose. Using crankshaft to mean use optimizing compiler is a bit confusing. This cl: https://chromium-review.googlesource.com/c/490206/ fixes the tests to use opt instead of crankshaft flag. One difference between --no-crankshaft and --no-opt would be that --no-opt would mean no optimizations at all where as with --no-crankshaft would mean we can force optimizations using %OptimizeFunctionOnNextCall. Bug: v8:6325 Change-Id: If17393ac5b6af4ea6e9a98e092f0261c2e0899c5 Reviewed-on: https://chromium-review.googlesource.com/490307 Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#45298}
This commit is contained in:
parent
9171d91c23
commit
96b0928939
@ -124,8 +124,7 @@ bool CompilationInfo::is_this_defined() const { return !IsStub(); }
|
||||
// profiler, so they trigger their own optimization when they're called
|
||||
// for the SharedFunctionInfo::kCallsUntilPrimitiveOptimization-th time.
|
||||
bool CompilationInfo::ShouldSelfOptimize() {
|
||||
return FLAG_opt && FLAG_crankshaft &&
|
||||
!(literal()->flags() & AstProperties::kDontSelfOptimize) &&
|
||||
return FLAG_opt && !(literal()->flags() & AstProperties::kDontSelfOptimize) &&
|
||||
!literal()->dont_optimize() &&
|
||||
literal()->scope()->AllowsLazyCompilation() &&
|
||||
!shared_info()->optimization_disabled();
|
||||
|
@ -117,7 +117,7 @@ class HOptimizedGraphBuilderWithPositions : public HOptimizedGraphBuilder {
|
||||
};
|
||||
|
||||
HCompilationJob::Status HCompilationJob::PrepareJobImpl() {
|
||||
if (!isolate()->use_crankshaft() ||
|
||||
if (!isolate()->use_optimizer() ||
|
||||
info()->shared_info()->must_use_ignition_turbo()) {
|
||||
// Crankshaft is entirely disabled.
|
||||
return FAILED;
|
||||
|
@ -343,7 +343,6 @@ DEFINE_STRING(trace_ignition_dispatches_output_file, nullptr,
|
||||
"written (by default, the table is not written to a file)")
|
||||
|
||||
// Flags for Crankshaft.
|
||||
DEFINE_BOOL(crankshaft, true, "use crankshaft")
|
||||
DEFINE_STRING(hydrogen_filter, "*", "optimization filter")
|
||||
DEFINE_BOOL(use_gvn, true, "use hydrogen global value numbering")
|
||||
DEFINE_INT(gvn_iterations, 3, "maximum number of GVN fix-point iterations")
|
||||
@ -525,7 +524,7 @@ DEFINE_BOOL(minimal, false,
|
||||
"simplifies execution model to make porting "
|
||||
"easier (e.g. always use Ignition, never use Crankshaft")
|
||||
DEFINE_IMPLICATION(minimal, ignition)
|
||||
DEFINE_NEG_IMPLICATION(minimal, crankshaft)
|
||||
DEFINE_NEG_IMPLICATION(minimal, opt)
|
||||
DEFINE_NEG_IMPLICATION(minimal, use_ic)
|
||||
|
||||
// Flags for native WebAssembly.
|
||||
|
@ -3011,8 +3011,8 @@ Map* Isolate::get_initial_js_array_map(ElementsKind kind) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
bool Isolate::use_crankshaft() {
|
||||
return FLAG_opt && FLAG_crankshaft && !serializer_enabled_ &&
|
||||
bool Isolate::use_optimizer() {
|
||||
return FLAG_opt && !serializer_enabled_ &&
|
||||
CpuFeatures::SupportsCrankshaft() && !is_precise_count_code_coverage();
|
||||
}
|
||||
|
||||
|
@ -997,7 +997,7 @@ class Isolate {
|
||||
bool IsDead() { return has_fatal_error_; }
|
||||
void SignalFatalError() { has_fatal_error_ = true; }
|
||||
|
||||
bool use_crankshaft();
|
||||
bool use_optimizer();
|
||||
|
||||
bool initialized_from_snapshot() { return initialized_from_snapshot_; }
|
||||
|
||||
|
@ -432,7 +432,7 @@ OptimizationReason RuntimeProfiler::ShouldOptimizeIgnition(
|
||||
void RuntimeProfiler::MarkCandidatesForOptimization() {
|
||||
HandleScope scope(isolate_);
|
||||
|
||||
if (!isolate_->use_crankshaft()) return;
|
||||
if (!isolate_->use_optimizer()) return;
|
||||
|
||||
DisallowHeapAllocation no_gc;
|
||||
|
||||
|
@ -340,7 +340,7 @@ RUNTIME_FUNCTION(Runtime_GetOptimizationStatus) {
|
||||
HandleScope scope(isolate);
|
||||
DCHECK(args.length() == 1 || args.length() == 2);
|
||||
int status = 0;
|
||||
if (!isolate->use_crankshaft()) {
|
||||
if (!isolate->use_optimizer()) {
|
||||
status |= static_cast<int>(OptimizationStatus::kNeverOptimize);
|
||||
}
|
||||
if (FLAG_always_opt || FLAG_prepare_always_opt) {
|
||||
|
@ -1718,7 +1718,7 @@ TEST(TestInternalWeakLists) {
|
||||
Isolate* isolate = CcTest::i_isolate();
|
||||
HandleScope scope(isolate);
|
||||
v8::Local<v8::Context> ctx[kNumTestContexts];
|
||||
if (!isolate->use_crankshaft()) return;
|
||||
if (!isolate->use_optimizer()) return;
|
||||
|
||||
CHECK_EQ(0, CountNativeContexts());
|
||||
|
||||
@ -1860,7 +1860,7 @@ TEST(TestInternalWeakListsTraverseWithGC) {
|
||||
Isolate* isolate = CcTest::i_isolate();
|
||||
HandleScope scope(isolate);
|
||||
v8::Local<v8::Context> ctx[kNumTestContexts];
|
||||
if (!isolate->use_crankshaft()) return;
|
||||
if (!isolate->use_optimizer()) return;
|
||||
|
||||
CHECK_EQ(0, CountNativeContexts());
|
||||
|
||||
@ -2508,7 +2508,7 @@ TEST(InstanceOfStubWriteBarrier) {
|
||||
#endif
|
||||
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft()) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer()) return;
|
||||
if (i::FLAG_force_marking_deque_overflows) return;
|
||||
v8::HandleScope outer_scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> ctx = CcTest::isolate()->GetCurrentContext();
|
||||
@ -2577,7 +2577,7 @@ TEST(ResetSharedFunctionInfoCountersDuringIncrementalMarking) {
|
||||
#endif
|
||||
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft()) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer()) return;
|
||||
v8::HandleScope outer_scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> ctx = CcTest::isolate()->GetCurrentContext();
|
||||
|
||||
@ -2622,7 +2622,7 @@ TEST(ResetSharedFunctionInfoCountersDuringMarkSweep) {
|
||||
#endif
|
||||
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft()) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer()) return;
|
||||
v8::HandleScope outer_scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> ctx = CcTest::isolate()->GetCurrentContext();
|
||||
|
||||
@ -2740,7 +2740,7 @@ TEST(IdleNotificationFinishMarking) {
|
||||
TEST(OptimizedAllocationAlwaysInNewSpace) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> ctx = CcTest::isolate()->GetCurrentContext();
|
||||
@ -2775,7 +2775,7 @@ TEST(OptimizedPretenuringAllocationFolding) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
i::FLAG_expose_gc = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> ctx = CcTest::isolate()->GetCurrentContext();
|
||||
@ -2826,7 +2826,7 @@ TEST(OptimizedPretenuringObjectArrayLiterals) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
i::FLAG_expose_gc = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
|
||||
@ -2866,7 +2866,7 @@ TEST(OptimizedPretenuringMixedInObjectProperties) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
i::FLAG_expose_gc = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
|
||||
@ -2924,7 +2924,7 @@ TEST(OptimizedPretenuringDoubleArrayProperties) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
i::FLAG_expose_gc = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
|
||||
@ -2964,7 +2964,7 @@ TEST(OptimizedPretenuringdoubleArrayLiterals) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
i::FLAG_expose_gc = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
|
||||
@ -3004,7 +3004,7 @@ TEST(OptimizedPretenuringNestedMixedArrayLiterals) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
i::FLAG_expose_gc = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> ctx = CcTest::isolate()->GetCurrentContext();
|
||||
@ -3054,7 +3054,7 @@ TEST(OptimizedPretenuringNestedObjectLiterals) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
i::FLAG_expose_gc = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> ctx = CcTest::isolate()->GetCurrentContext();
|
||||
@ -3105,7 +3105,7 @@ TEST(OptimizedPretenuringNestedDoubleLiterals) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
i::FLAG_expose_gc = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> ctx = CcTest::isolate()->GetCurrentContext();
|
||||
@ -3156,7 +3156,7 @@ TEST(OptimizedPretenuringNestedDoubleLiterals) {
|
||||
TEST(OptimizedAllocationArrayLiterals) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
if (i::FLAG_gc_global || i::FLAG_stress_compaction) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> ctx = CcTest::isolate()->GetCurrentContext();
|
||||
@ -4397,7 +4397,7 @@ TEST(EnsureAllocationSiteDependentCodesProcessed) {
|
||||
v8::internal::Heap* heap = CcTest::heap();
|
||||
GlobalHandles* global_handles = isolate->global_handles();
|
||||
|
||||
if (!isolate->use_crankshaft()) return;
|
||||
if (!isolate->use_optimizer()) return;
|
||||
|
||||
// The allocation site at the head of the list is ours.
|
||||
Handle<AllocationSite> site;
|
||||
@ -4467,7 +4467,7 @@ TEST(CellsInOptimizedCodeAreWeak) {
|
||||
Isolate* isolate = CcTest::i_isolate();
|
||||
v8::internal::Heap* heap = CcTest::heap();
|
||||
|
||||
if (!isolate->use_crankshaft()) return;
|
||||
if (!isolate->use_optimizer()) return;
|
||||
HandleScope outer_scope(heap->isolate());
|
||||
Handle<Code> code;
|
||||
{
|
||||
@ -4511,7 +4511,7 @@ TEST(ObjectsInOptimizedCodeAreWeak) {
|
||||
Isolate* isolate = CcTest::i_isolate();
|
||||
v8::internal::Heap* heap = CcTest::heap();
|
||||
|
||||
if (!isolate->use_crankshaft()) return;
|
||||
if (!isolate->use_optimizer()) return;
|
||||
HandleScope outer_scope(heap->isolate());
|
||||
Handle<Code> code;
|
||||
{
|
||||
@ -4552,7 +4552,7 @@ TEST(NewSpaceObjectsInOptimizedCode) {
|
||||
Isolate* isolate = CcTest::i_isolate();
|
||||
v8::internal::Heap* heap = CcTest::heap();
|
||||
|
||||
if (!isolate->use_crankshaft()) return;
|
||||
if (!isolate->use_optimizer()) return;
|
||||
HandleScope outer_scope(heap->isolate());
|
||||
Handle<Code> code;
|
||||
{
|
||||
@ -4624,7 +4624,7 @@ TEST(NoWeakHashTableLeakWithIncrementalMarking) {
|
||||
i::Deoptimizer::DeoptimizeAll(isolate);
|
||||
CcTest::CollectAllGarbage();
|
||||
|
||||
if (!isolate->use_crankshaft()) return;
|
||||
if (!isolate->use_optimizer()) return;
|
||||
HandleScope outer_scope(heap->isolate());
|
||||
for (int i = 0; i < 3; i++) {
|
||||
heap::SimulateIncrementalMarking(heap);
|
||||
@ -4692,7 +4692,7 @@ TEST(NextCodeLinkIsWeak) {
|
||||
Isolate* isolate = CcTest::i_isolate();
|
||||
v8::internal::Heap* heap = CcTest::heap();
|
||||
|
||||
if (!isolate->use_crankshaft()) return;
|
||||
if (!isolate->use_optimizer()) return;
|
||||
HandleScope outer_scope(heap->isolate());
|
||||
Handle<Code> code;
|
||||
CcTest::CollectAllAvailableGarbage();
|
||||
@ -4738,7 +4738,7 @@ TEST(NextCodeLinkIsWeak2) {
|
||||
Isolate* isolate = CcTest::i_isolate();
|
||||
v8::internal::Heap* heap = CcTest::heap();
|
||||
|
||||
if (!isolate->use_crankshaft()) return;
|
||||
if (!isolate->use_optimizer()) return;
|
||||
HandleScope outer_scope(heap->isolate());
|
||||
CcTest::CollectAllAvailableGarbage();
|
||||
Handle<Context> context(Context::cast(heap->native_contexts_list()), isolate);
|
||||
|
@ -292,7 +292,7 @@ TEST(FeedbackVectorPreservedAcrossRecompiles) {
|
||||
if (i::FLAG_always_opt || !i::FLAG_opt) return;
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
CcTest::InitializeVM();
|
||||
if (!CcTest::i_isolate()->use_crankshaft()) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer()) return;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> context = CcTest::isolate()->GetCurrentContext();
|
||||
|
||||
@ -402,8 +402,8 @@ TEST(OptimizedCodeSharing1) {
|
||||
env->Global()
|
||||
->Get(env.local(), v8_str("closure2"))
|
||||
.ToLocalChecked())));
|
||||
CHECK(fun1->IsOptimized() || !CcTest::i_isolate()->use_crankshaft());
|
||||
CHECK(fun2->IsOptimized() || !CcTest::i_isolate()->use_crankshaft());
|
||||
CHECK(fun1->IsOptimized() || !CcTest::i_isolate()->use_optimizer());
|
||||
CHECK(fun2->IsOptimized() || !CcTest::i_isolate()->use_optimizer());
|
||||
CHECK_EQ(fun1->code(), fun2->code());
|
||||
}
|
||||
}
|
||||
|
@ -1072,7 +1072,7 @@ static void TickLines(bool optimize) {
|
||||
CHECK(func->shared());
|
||||
CHECK(func->shared()->abstract_code());
|
||||
CHECK(!optimize || func->IsOptimized() ||
|
||||
!CcTest::i_isolate()->use_crankshaft());
|
||||
!CcTest::i_isolate()->use_optimizer());
|
||||
i::AbstractCode* code = func->abstract_code();
|
||||
CHECK(code);
|
||||
i::Address code_address = code->instruction_start();
|
||||
@ -1792,7 +1792,7 @@ const char* GetBranchDeoptReason(v8::Local<v8::Context> context,
|
||||
|
||||
// deopt at top function
|
||||
TEST(CollectDeoptEvents) {
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> env = CcTest::NewContext(PROFILER_EXTENSION);
|
||||
@ -1926,7 +1926,7 @@ static const char* inlined_source =
|
||||
|
||||
// deopt at the first level inlined function
|
||||
TEST(DeoptAtFirstLevelInlinedSource) {
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> env = CcTest::NewContext(PROFILER_EXTENSION);
|
||||
@ -1996,7 +1996,7 @@ TEST(DeoptAtFirstLevelInlinedSource) {
|
||||
|
||||
// deopt at the second level inlined function
|
||||
TEST(DeoptAtSecondLevelInlinedSource) {
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> env = CcTest::NewContext(PROFILER_EXTENSION);
|
||||
@ -2071,7 +2071,7 @@ TEST(DeoptAtSecondLevelInlinedSource) {
|
||||
|
||||
// deopt in untracked function
|
||||
TEST(DeoptUntrackedFunction) {
|
||||
if (!CcTest::i_isolate()->use_crankshaft() || i::FLAG_always_opt) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer() || i::FLAG_always_opt) return;
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
v8::HandleScope scope(CcTest::isolate());
|
||||
v8::Local<v8::Context> env = CcTest::NewContext(PROFILER_EXTENSION);
|
||||
|
@ -448,7 +448,7 @@ UNINITIALIZED_TEST(DeoptimizeBinaryOperationADDString) {
|
||||
i::FLAG_always_opt = true;
|
||||
CompileRun(f_source);
|
||||
CompileRun("f('a+', new X());");
|
||||
CHECK(!i_isolate->use_crankshaft() ||
|
||||
CHECK(!i_isolate->use_optimizer() ||
|
||||
GetJSFunction(env.local(), "f")->IsOptimized());
|
||||
|
||||
// Call f and force deoptimization while processing the binary operation.
|
||||
@ -510,7 +510,7 @@ static void TestDeoptimizeBinaryOpHelper(LocalContext* env,
|
||||
i::FLAG_always_opt = true;
|
||||
CompileRun(f_source);
|
||||
CompileRun("f(7, new X());");
|
||||
CHECK(!i_isolate->use_crankshaft() ||
|
||||
CHECK(!i_isolate->use_optimizer() ||
|
||||
GetJSFunction((*env).local(), "f")->IsOptimized());
|
||||
|
||||
// Call f and force deoptimization while processing the binary operation.
|
||||
@ -707,7 +707,7 @@ UNINITIALIZED_TEST(DeoptimizeCompare) {
|
||||
i::FLAG_always_opt = true;
|
||||
CompileRun(f_source);
|
||||
CompileRun("f('a', new X());");
|
||||
CHECK(!i_isolate->use_crankshaft() ||
|
||||
CHECK(!i_isolate->use_optimizer() ||
|
||||
GetJSFunction(env.local(), "f")->IsOptimized());
|
||||
|
||||
// Call f and force deoptimization while processing the comparison.
|
||||
@ -798,7 +798,7 @@ UNINITIALIZED_TEST(DeoptimizeLoadICStoreIC) {
|
||||
CompileRun("g1(new X());");
|
||||
CompileRun("f2(new X(), 'z');");
|
||||
CompileRun("g2(new X(), 'z');");
|
||||
if (i_isolate->use_crankshaft()) {
|
||||
if (i_isolate->use_optimizer()) {
|
||||
CHECK(GetJSFunction(env.local(), "f1")->IsOptimized());
|
||||
CHECK(GetJSFunction(env.local(), "g1")->IsOptimized());
|
||||
CHECK(GetJSFunction(env.local(), "f2")->IsOptimized());
|
||||
@ -902,7 +902,7 @@ UNINITIALIZED_TEST(DeoptimizeLoadICStoreICNested) {
|
||||
CompileRun("g1(new X());");
|
||||
CompileRun("f2(new X(), 'z');");
|
||||
CompileRun("g2(new X(), 'z');");
|
||||
if (i_isolate->use_crankshaft()) {
|
||||
if (i_isolate->use_optimizer()) {
|
||||
CHECK(GetJSFunction(env.local(), "f1")->IsOptimized());
|
||||
CHECK(GetJSFunction(env.local(), "g1")->IsOptimized());
|
||||
CHECK(GetJSFunction(env.local(), "f2")->IsOptimized());
|
||||
|
@ -2671,7 +2671,7 @@ TEST(WeakContainers) {
|
||||
i::FLAG_allow_natives_syntax = true;
|
||||
LocalContext env;
|
||||
v8::HandleScope scope(env->GetIsolate());
|
||||
if (!CcTest::i_isolate()->use_crankshaft()) return;
|
||||
if (!CcTest::i_isolate()->use_optimizer()) return;
|
||||
v8::HeapProfiler* heap_profiler = env->GetIsolate()->GetHeapProfiler();
|
||||
CompileRun(
|
||||
"function foo(a) { return a.x; }\n"
|
||||
|
Loading…
Reference in New Issue
Block a user