OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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 <stdlib.h> | 5 #include <stdlib.h> |
6 | 6 |
7 #include "src/v8.h" | 7 #include "src/v8.h" |
8 | 8 |
9 #include "src/ast/ast.h" | 9 #include "src/ast/ast.h" |
10 #include "src/ast/ast-expression-visitor.h" | 10 #include "src/ast/ast-expression-visitor.h" |
(...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
371 CHECK_TYPES_BEGIN { | 371 CHECK_TYPES_BEGIN { |
372 CHECK_EXPR(FunctionLiteral, Bounds::Unbounded()) { | 372 CHECK_EXPR(FunctionLiteral, Bounds::Unbounded()) { |
373 // Implicit initial yield | 373 // Implicit initial yield |
374 CHECK_EXPR(Yield, Bounds::Unbounded()) { | 374 CHECK_EXPR(Yield, Bounds::Unbounded()) { |
375 CHECK_VAR(.generator_object, Bounds::Unbounded()); | 375 CHECK_VAR(.generator_object, Bounds::Unbounded()); |
376 CHECK_EXPR(Assignment, Bounds::Unbounded()) { | 376 CHECK_EXPR(Assignment, Bounds::Unbounded()) { |
377 CHECK_VAR(.generator_object, Bounds::Unbounded()); | 377 CHECK_VAR(.generator_object, Bounds::Unbounded()); |
378 CHECK_EXPR(CallRuntime, Bounds::Unbounded()); | 378 CHECK_EXPR(CallRuntime, Bounds::Unbounded()); |
379 } | 379 } |
380 } | 380 } |
381 // Explicit yield | 381 // Explicit yield (argument wrapped with CreateIterResultObject) |
382 CHECK_EXPR(Yield, Bounds::Unbounded()) { | 382 CHECK_EXPR(Yield, Bounds::Unbounded()) { |
383 CHECK_VAR(.generator_object, Bounds::Unbounded()); | 383 CHECK_VAR(.generator_object, Bounds::Unbounded()); |
| 384 CHECK_EXPR(CallRuntime, Bounds::Unbounded()) { |
| 385 CHECK_EXPR(Literal, Bounds::Unbounded()); |
| 386 CHECK_EXPR(Literal, Bounds::Unbounded()); |
| 387 } |
| 388 } |
| 389 // Argument to implicit final return |
| 390 CHECK_EXPR(CallRuntime, Bounds::Unbounded()) { // CreateIterResultObject |
384 CHECK_EXPR(Literal, Bounds::Unbounded()); | 391 CHECK_EXPR(Literal, Bounds::Unbounded()); |
385 } | |
386 // Implicit final yield | |
387 CHECK_EXPR(Yield, Bounds::Unbounded()) { | |
388 CHECK_VAR(.generator_object, Bounds::Unbounded()); | |
389 CHECK_EXPR(Literal, Bounds::Unbounded()); | 392 CHECK_EXPR(Literal, Bounds::Unbounded()); |
390 } | 393 } |
391 // Implicit finally clause | 394 // Implicit finally clause |
392 CHECK_EXPR(CallRuntime, Bounds::Unbounded()) { | 395 CHECK_EXPR(CallRuntime, Bounds::Unbounded()) { |
393 CHECK_VAR(.generator_object, Bounds::Unbounded()); | 396 CHECK_VAR(.generator_object, Bounds::Unbounded()); |
394 } | 397 } |
395 } | 398 } |
396 } | 399 } |
397 CHECK_TYPES_END | 400 CHECK_TYPES_END |
398 } | 401 } |
(...skipping 12 matching lines...) Expand all Loading... |
411 CHECK_EXPR(FunctionLiteral, Bounds::Unbounded()) { | 414 CHECK_EXPR(FunctionLiteral, Bounds::Unbounded()) { |
412 CHECK_EXPR(BinaryOperation, Bounds::Unbounded()) { | 415 CHECK_EXPR(BinaryOperation, Bounds::Unbounded()) { |
413 // Skip x + x | 416 // Skip x + x |
414 CHECK_SKIP(); | 417 CHECK_SKIP(); |
415 CHECK_EXPR(Literal, Bounds::Unbounded()); | 418 CHECK_EXPR(Literal, Bounds::Unbounded()); |
416 } | 419 } |
417 } | 420 } |
418 } | 421 } |
419 CHECK_TYPES_END | 422 CHECK_TYPES_END |
420 } | 423 } |
OLD | NEW |