Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(331)

Side by Side Diff: src/compiler/pipeline.cc

Issue 850803002: First simple implementation of for-of in TurboFan. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 <sstream> 8 #include <sstream>
9 9
10 #include "src/base/platform/elapsed-timer.h" 10 #include "src/base/platform/elapsed-timer.h"
(...skipping 742 matching lines...) Expand 10 before | Expand all | Expand 10 after
753 if (FLAG_trace_turbo) { 753 if (FLAG_trace_turbo) {
754 Run<PrintGraphPhase>(phase); 754 Run<PrintGraphPhase>(phase);
755 } 755 }
756 if (VerifyGraphs()) { 756 if (VerifyGraphs()) {
757 Run<VerifyGraphPhase>(untyped); 757 Run<VerifyGraphPhase>(untyped);
758 } 758 }
759 } 759 }
760 760
761 761
762 Handle<Code> Pipeline::GenerateCode() { 762 Handle<Code> Pipeline::GenerateCode() {
763 // This list must be kept in sync with DONT_TURBOFAN_NODE in ast.cc. 763 // This list must be kept in sync with DisableTurbofan in ast-numbering.cc.
764 if (info()->function()->dont_optimize_reason() == kTryCatchStatement || 764 if (info()->function()->dont_optimize_reason() == kTryCatchStatement ||
765 info()->function()->dont_optimize_reason() == kTryFinallyStatement || 765 info()->function()->dont_optimize_reason() == kTryFinallyStatement ||
766 // TODO(turbofan): Make ES6 for-of work and remove this bailout.
767 info()->function()->dont_optimize_reason() == kForOfStatement ||
768 // TODO(turbofan): Make super work and remove this bailout. 766 // TODO(turbofan): Make super work and remove this bailout.
769 info()->function()->dont_optimize_reason() == kSuperReference || 767 info()->function()->dont_optimize_reason() == kSuperReference ||
770 // TODO(turbofan): Make class literals work and remove this bailout. 768 // TODO(turbofan): Make class literals work and remove this bailout.
771 info()->function()->dont_optimize_reason() == kClassLiteral || 769 info()->function()->dont_optimize_reason() == kClassLiteral ||
772 // TODO(turbofan): Make OSR work with inner loops and remove this bailout. 770 // TODO(turbofan): Make OSR work with inner loops and remove this bailout.
773 (info()->is_osr() && !FLAG_turbo_osr)) { 771 (info()->is_osr() && !FLAG_turbo_osr)) {
774 return Handle<Code>::null(); 772 return Handle<Code>::null();
775 } 773 }
776 774
777 ZonePool zone_pool(isolate()); 775 ZonePool zone_pool(isolate());
(...skipping 319 matching lines...) Expand 10 before | Expand all | Expand 10 after
1097 } 1095 }
1098 1096
1099 1097
1100 void Pipeline::TearDown() { 1098 void Pipeline::TearDown() {
1101 InstructionOperand::TearDownCaches(); 1099 InstructionOperand::TearDownCaches();
1102 } 1100 }
1103 1101
1104 } // namespace compiler 1102 } // namespace compiler
1105 } // namespace internal 1103 } // namespace internal
1106 } // namespace v8 1104 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698