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

Side by Side Diff: src/crankshaft/typing.cc

Issue 1968753004: [cleanup] Split ForOf and ForIn AST nodes apart as they share little (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 7 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
« no previous file with comments | « src/compiler/ast-loop-assignment-analyzer.cc ('k') | src/parsing/parser.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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/crankshaft/typing.h" 5 #include "src/crankshaft/typing.h"
6 6
7 #include "src/ast/scopes.h" 7 #include "src/ast/scopes.h"
8 #include "src/frames.h" 8 #include "src/frames.h"
9 #include "src/frames-inl.h" 9 #include "src/frames-inl.h"
10 #include "src/ostreams.h" 10 #include "src/ostreams.h"
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after
297 stmt->set_for_in_type(static_cast<ForInStatement::ForInType>( 297 stmt->set_for_in_type(static_cast<ForInStatement::ForInType>(
298 oracle()->ForInType(stmt->ForInFeedbackSlot()))); 298 oracle()->ForInType(stmt->ForInFeedbackSlot())));
299 299
300 RECURSE(Visit(stmt->enumerable())); 300 RECURSE(Visit(stmt->enumerable()));
301 store_.Forget(); // Control may transfer here via looping or 'continue'. 301 store_.Forget(); // Control may transfer here via looping or 'continue'.
302 ObserveTypesAtOsrEntry(stmt); 302 ObserveTypesAtOsrEntry(stmt);
303 RECURSE(Visit(stmt->body())); 303 RECURSE(Visit(stmt->body()));
304 store_.Forget(); // Control may transfer here via 'break'. 304 store_.Forget(); // Control may transfer here via 'break'.
305 } 305 }
306 306
307 307 void AstTyper::VisitForOfStatement(ForOfStatement* stmt) {}
308 void AstTyper::VisitForOfStatement(ForOfStatement* stmt) {
309 RECURSE(Visit(stmt->iterable()));
310 store_.Forget(); // Control may transfer here via looping or 'continue'.
311 RECURSE(Visit(stmt->body()));
312 store_.Forget(); // Control may transfer here via 'break'.
313 }
314
315 308
316 void AstTyper::VisitTryCatchStatement(TryCatchStatement* stmt) { 309 void AstTyper::VisitTryCatchStatement(TryCatchStatement* stmt) {
317 Effects try_effects = EnterEffects(); 310 Effects try_effects = EnterEffects();
318 RECURSE(Visit(stmt->try_block())); 311 RECURSE(Visit(stmt->try_block()));
319 ExitEffects(); 312 ExitEffects();
320 Effects catch_effects = EnterEffects(); 313 Effects catch_effects = EnterEffects();
321 store_.Forget(); // Control may transfer here via 'throw'. 314 store_.Forget(); // Control may transfer here via 'throw'.
322 RECURSE(Visit(stmt->catch_block())); 315 RECURSE(Visit(stmt->catch_block()));
323 ExitEffects(); 316 ExitEffects();
324 try_effects.Alt(catch_effects); 317 try_effects.Alt(catch_effects);
(...skipping 470 matching lines...) Expand 10 before | Expand all | Expand 10 after
795 void AstTyper::VisitImportDeclaration(ImportDeclaration* declaration) { 788 void AstTyper::VisitImportDeclaration(ImportDeclaration* declaration) {
796 } 789 }
797 790
798 791
799 void AstTyper::VisitExportDeclaration(ExportDeclaration* declaration) { 792 void AstTyper::VisitExportDeclaration(ExportDeclaration* declaration) {
800 } 793 }
801 794
802 795
803 } // namespace internal 796 } // namespace internal
804 } // namespace v8 797 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/ast-loop-assignment-analyzer.cc ('k') | src/parsing/parser.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698