OLD | NEW |
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/hydrogen.h" | 5 #include "src/hydrogen.h" |
6 | 6 |
7 #include <sstream> | 7 #include <sstream> |
8 | 8 |
9 #include "src/v8.h" | 9 #include "src/v8.h" |
10 | 10 |
(...skipping 7961 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7972 // adopted. | 7972 // adopted. |
7973 Add<HSimulate>(BailoutId::None()); | 7973 Add<HSimulate>(BailoutId::None()); |
7974 | 7974 |
7975 current_block()->UpdateEnvironment(inner_env); | 7975 current_block()->UpdateEnvironment(inner_env); |
7976 Scope* saved_scope = scope(); | 7976 Scope* saved_scope = scope(); |
7977 set_scope(target_info.scope()); | 7977 set_scope(target_info.scope()); |
7978 HEnterInlined* enter_inlined = | 7978 HEnterInlined* enter_inlined = |
7979 Add<HEnterInlined>(return_id, target, context, arguments_count, function, | 7979 Add<HEnterInlined>(return_id, target, context, arguments_count, function, |
7980 function_state()->inlining_kind(), | 7980 function_state()->inlining_kind(), |
7981 function->scope()->arguments(), arguments_object); | 7981 function->scope()->arguments(), arguments_object); |
| 7982 if (top_info()->is_tracking_positions()) { |
| 7983 enter_inlined->set_inlining_id(inlining_id); |
| 7984 } |
7982 function_state()->set_entry(enter_inlined); | 7985 function_state()->set_entry(enter_inlined); |
7983 | 7986 |
7984 VisitDeclarations(target_info.scope()->declarations()); | 7987 VisitDeclarations(target_info.scope()->declarations()); |
7985 VisitStatements(function->body()); | 7988 VisitStatements(function->body()); |
7986 set_scope(saved_scope); | 7989 set_scope(saved_scope); |
7987 if (HasStackOverflow()) { | 7990 if (HasStackOverflow()) { |
7988 // Bail out if the inline function did, as we cannot residualize a call | 7991 // Bail out if the inline function did, as we cannot residualize a call |
7989 // instead, but do not disable optimization for the outer function. | 7992 // instead, but do not disable optimization for the outer function. |
7990 TraceInline(target, caller, "inline graph construction failed"); | 7993 TraceInline(target, caller, "inline graph construction failed"); |
7991 target_shared->DisableOptimization(kInliningBailedOut); | 7994 target_shared->DisableOptimization(kInliningBailedOut); |
(...skipping 5394 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
13386 if (ShouldProduceTraceOutput()) { | 13389 if (ShouldProduceTraceOutput()) { |
13387 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); | 13390 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); |
13388 } | 13391 } |
13389 | 13392 |
13390 #ifdef DEBUG | 13393 #ifdef DEBUG |
13391 graph_->Verify(false); // No full verify. | 13394 graph_->Verify(false); // No full verify. |
13392 #endif | 13395 #endif |
13393 } | 13396 } |
13394 | 13397 |
13395 } } // namespace v8::internal | 13398 } } // namespace v8::internal |
OLD | NEW |