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/js-inlining.h" | 5 #include "src/compiler/js-inlining.h" |
6 | 6 |
7 #include "src/ast/ast-numbering.h" | 7 #include "src/ast/ast-numbering.h" |
8 #include "src/ast/ast.h" | 8 #include "src/ast/ast.h" |
9 #include "src/ast/scopes.h" | 9 #include "src/ast/scopes.h" |
10 #include "src/compiler.h" | 10 #include "src/compiler.h" |
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
349 TRACE("Not inlining %s into %s because of surrounding try-block\n", | 349 TRACE("Not inlining %s into %s because of surrounding try-block\n", |
350 shared_info->DebugName()->ToCString().get(), | 350 shared_info->DebugName()->ToCString().get(), |
351 info_->shared_info()->DebugName()->ToCString().get()); | 351 info_->shared_info()->DebugName()->ToCString().get()); |
352 return NoChange(); | 352 return NoChange(); |
353 } | 353 } |
354 | 354 |
355 Zone zone(info_->isolate()->allocator()); | 355 Zone zone(info_->isolate()->allocator()); |
356 ParseInfo parse_info(&zone, function); | 356 ParseInfo parse_info(&zone, function); |
357 CompilationInfo info(&parse_info, function); | 357 CompilationInfo info(&parse_info, function); |
358 if (info_->is_deoptimization_enabled()) info.MarkAsDeoptimizationEnabled(); | 358 if (info_->is_deoptimization_enabled()) info.MarkAsDeoptimizationEnabled(); |
| 359 if (info_->is_type_feedback_enabled()) info.MarkAsTypeFeedbackEnabled(); |
359 | 360 |
360 if (!Compiler::ParseAndAnalyze(info.parse_info())) { | 361 if (!Compiler::ParseAndAnalyze(info.parse_info())) { |
361 TRACE("Not inlining %s into %s because parsing failed\n", | 362 TRACE("Not inlining %s into %s because parsing failed\n", |
362 shared_info->DebugName()->ToCString().get(), | 363 shared_info->DebugName()->ToCString().get(), |
363 info_->shared_info()->DebugName()->ToCString().get()); | 364 info_->shared_info()->DebugName()->ToCString().get()); |
364 if (info_->isolate()->has_pending_exception()) { | 365 if (info_->isolate()->has_pending_exception()) { |
365 info_->isolate()->clear_pending_exception(); | 366 info_->isolate()->clear_pending_exception(); |
366 } | 367 } |
367 return NoChange(); | 368 return NoChange(); |
368 } | 369 } |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
514 } | 515 } |
515 | 516 |
516 return InlineCall(node, new_target, context, frame_state, start, end); | 517 return InlineCall(node, new_target, context, frame_state, start, end); |
517 } | 518 } |
518 | 519 |
519 Graph* JSInliner::graph() const { return jsgraph()->graph(); } | 520 Graph* JSInliner::graph() const { return jsgraph()->graph(); } |
520 | 521 |
521 } // namespace compiler | 522 } // namespace compiler |
522 } // namespace internal | 523 } // namespace internal |
523 } // namespace v8 | 524 } // namespace v8 |
OLD | NEW |