OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/compiler/pipeline.h" | 5 #include "src/compiler/pipeline.h" |
6 | 6 |
7 #include <fstream> // NOLINT(readability/streams) | 7 #include <fstream> // NOLINT(readability/streams) |
8 #include <memory> | 8 #include <memory> |
9 #include <sstream> | 9 #include <sstream> |
10 | 10 |
(...skipping 534 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
545 }; | 545 }; |
546 | 546 |
547 PipelineCompilationJob::Status PipelineCompilationJob::PrepareJobImpl() { | 547 PipelineCompilationJob::Status PipelineCompilationJob::PrepareJobImpl() { |
548 if (info()->shared_info()->asm_function()) { | 548 if (info()->shared_info()->asm_function()) { |
549 if (info()->osr_frame()) info()->MarkAsFrameSpecializing(); | 549 if (info()->osr_frame()) info()->MarkAsFrameSpecializing(); |
550 info()->MarkAsFunctionContextSpecializing(); | 550 info()->MarkAsFunctionContextSpecializing(); |
551 } else { | 551 } else { |
552 if (!FLAG_always_opt) { | 552 if (!FLAG_always_opt) { |
553 info()->MarkAsBailoutOnUninitialized(); | 553 info()->MarkAsBailoutOnUninitialized(); |
554 } | 554 } |
555 if (FLAG_turbo_inlining) { | |
556 info()->MarkAsInliningEnabled(); | |
557 } | |
558 } | 555 } |
559 if (!info()->shared_info()->asm_function() || FLAG_turbo_asm_deoptimization) { | 556 if (!info()->shared_info()->asm_function() || FLAG_turbo_asm_deoptimization) { |
560 info()->MarkAsDeoptimizationEnabled(); | 557 info()->MarkAsDeoptimizationEnabled(); |
561 if (FLAG_inline_accessors) { | 558 if (FLAG_inline_accessors) { |
562 info()->MarkAsAccessorInliningEnabled(); | 559 info()->MarkAsAccessorInliningEnabled(); |
563 } | 560 } |
564 } | 561 } |
565 if (!info()->is_optimizing_from_bytecode()) { | 562 if (!info()->is_optimizing_from_bytecode()) { |
566 if (!Compiler::EnsureDeoptimizationSupport(info())) return FAILED; | 563 if (!Compiler::EnsureDeoptimizationSupport(info())) return FAILED; |
| 564 } else if (FLAG_turbo_inlining) { |
| 565 info()->MarkAsInliningEnabled(); |
567 } | 566 } |
568 | 567 |
569 linkage_ = new (&zone_) Linkage(Linkage::ComputeIncoming(&zone_, info())); | 568 linkage_ = new (&zone_) Linkage(Linkage::ComputeIncoming(&zone_, info())); |
570 | 569 |
571 if (!pipeline_.CreateGraph()) { | 570 if (!pipeline_.CreateGraph()) { |
572 if (isolate()->has_pending_exception()) return FAILED; // Stack overflowed. | 571 if (isolate()->has_pending_exception()) return FAILED; // Stack overflowed. |
573 return AbortOptimization(kGraphBuildingFailed); | 572 return AbortOptimization(kGraphBuildingFailed); |
574 } | 573 } |
575 | 574 |
576 return SUCCEEDED; | 575 return SUCCEEDED; |
(...skipping 1368 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1945 data->DeleteRegisterAllocationZone(); | 1944 data->DeleteRegisterAllocationZone(); |
1946 } | 1945 } |
1947 | 1946 |
1948 CompilationInfo* PipelineImpl::info() const { return data_->info(); } | 1947 CompilationInfo* PipelineImpl::info() const { return data_->info(); } |
1949 | 1948 |
1950 Isolate* PipelineImpl::isolate() const { return info()->isolate(); } | 1949 Isolate* PipelineImpl::isolate() const { return info()->isolate(); } |
1951 | 1950 |
1952 } // namespace compiler | 1951 } // namespace compiler |
1953 } // namespace internal | 1952 } // namespace internal |
1954 } // namespace v8 | 1953 } // namespace v8 |
OLD | NEW |