| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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/parsing/parser.h" | 5 #include "src/parsing/parser.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 | 8 |
| 9 #include "src/api.h" | 9 #include "src/api.h" |
| 10 #include "src/ast/ast-expression-rewriter.h" | 10 #include "src/ast/ast-expression-rewriter.h" |
| (...skipping 596 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 607 // parser records. | 607 // parser records. |
| 608 // If the debugger requests compilation for break points, we cannot be | 608 // If the debugger requests compilation for break points, we cannot be |
| 609 // aggressive about lazy compilation, because it might trigger compilation | 609 // aggressive about lazy compilation, because it might trigger compilation |
| 610 // of functions without an outer context when setting a breakpoint through | 610 // of functions without an outer context when setting a breakpoint through |
| 611 // Debug::FindSharedFunctionInfoInScript | 611 // Debug::FindSharedFunctionInfoInScript |
| 612 bool can_compile_lazily = FLAG_lazy && !info->is_debug(); | 612 bool can_compile_lazily = FLAG_lazy && !info->is_debug(); |
| 613 | 613 |
| 614 // Consider compiling eagerly when targeting the code cache. | 614 // Consider compiling eagerly when targeting the code cache. |
| 615 can_compile_lazily &= !(FLAG_serialize_eager && info->will_serialize()); | 615 can_compile_lazily &= !(FLAG_serialize_eager && info->will_serialize()); |
| 616 | 616 |
| 617 // Consider compiling eagerly when compiling bytecode for Ignition. | |
| 618 can_compile_lazily &= !(FLAG_ignition && FLAG_ignition_eager && | |
| 619 info->isolate()->serializer_enabled()); | |
| 620 | |
| 621 set_default_eager_compile_hint(can_compile_lazily | 617 set_default_eager_compile_hint(can_compile_lazily |
| 622 ? FunctionLiteral::kShouldLazyCompile | 618 ? FunctionLiteral::kShouldLazyCompile |
| 623 : FunctionLiteral::kShouldEagerCompile); | 619 : FunctionLiteral::kShouldEagerCompile); |
| 624 set_allow_lazy(FLAG_lazy && info->allow_lazy_parsing() && | 620 set_allow_lazy(FLAG_lazy && info->allow_lazy_parsing() && |
| 625 !info->is_native() && info->extension() == nullptr && | 621 !info->is_native() && info->extension() == nullptr && |
| 626 can_compile_lazily); | 622 can_compile_lazily); |
| 627 set_allow_natives(FLAG_allow_natives_syntax || info->is_native()); | 623 set_allow_natives(FLAG_allow_natives_syntax || info->is_native()); |
| 628 set_allow_tailcalls(FLAG_harmony_tailcalls && !info->is_native() && | 624 set_allow_tailcalls(FLAG_harmony_tailcalls && !info->is_native() && |
| 629 info->isolate()->is_tail_call_elimination_enabled()); | 625 info->isolate()->is_tail_call_elimination_enabled()); |
| 630 set_allow_harmony_do_expressions(FLAG_harmony_do_expressions); | 626 set_allow_harmony_do_expressions(FLAG_harmony_do_expressions); |
| (...skipping 4775 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5406 | 5402 |
| 5407 return final_loop; | 5403 return final_loop; |
| 5408 } | 5404 } |
| 5409 | 5405 |
| 5410 #undef CHECK_OK | 5406 #undef CHECK_OK |
| 5411 #undef CHECK_OK_VOID | 5407 #undef CHECK_OK_VOID |
| 5412 #undef CHECK_FAILED | 5408 #undef CHECK_FAILED |
| 5413 | 5409 |
| 5414 } // namespace internal | 5410 } // namespace internal |
| 5415 } // namespace v8 | 5411 } // namespace v8 |
| OLD | NEW |