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 8136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8147 // Parse and allocate variables. | 8147 // Parse and allocate variables. |
8148 // Use the same AstValueFactory for creating strings in the sub-compilation | 8148 // Use the same AstValueFactory for creating strings in the sub-compilation |
8149 // step, but don't transfer ownership to target_info. | 8149 // step, but don't transfer ownership to target_info. |
8150 ParseInfo parse_info(zone(), target); | 8150 ParseInfo parse_info(zone(), target); |
8151 parse_info.set_ast_value_factory( | 8151 parse_info.set_ast_value_factory( |
8152 top_info()->parse_info()->ast_value_factory()); | 8152 top_info()->parse_info()->ast_value_factory()); |
8153 parse_info.set_ast_value_factory_owned(false); | 8153 parse_info.set_ast_value_factory_owned(false); |
8154 | 8154 |
8155 CompilationInfo target_info(&parse_info); | 8155 CompilationInfo target_info(&parse_info); |
8156 Handle<SharedFunctionInfo> target_shared(target->shared()); | 8156 Handle<SharedFunctionInfo> target_shared(target->shared()); |
| 8157 if (target_shared->HasDebugInfo()) { |
| 8158 TraceInline(target, caller, "target is being debugged"); |
| 8159 return false; |
| 8160 } |
8157 if (!Compiler::ParseAndAnalyze(target_info.parse_info())) { | 8161 if (!Compiler::ParseAndAnalyze(target_info.parse_info())) { |
8158 if (target_info.isolate()->has_pending_exception()) { | 8162 if (target_info.isolate()->has_pending_exception()) { |
8159 // Parse or scope error, never optimize this function. | 8163 // Parse or scope error, never optimize this function. |
8160 SetStackOverflow(); | 8164 SetStackOverflow(); |
8161 target_shared->DisableOptimization(kParseScopeError); | 8165 target_shared->DisableOptimization(kParseScopeError); |
8162 } | 8166 } |
8163 TraceInline(target, caller, "parse failure"); | 8167 TraceInline(target, caller, "parse failure"); |
8164 return false; | 8168 return false; |
8165 } | 8169 } |
8166 | 8170 |
(...skipping 5154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
13321 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); | 13325 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); |
13322 } | 13326 } |
13323 | 13327 |
13324 #ifdef DEBUG | 13328 #ifdef DEBUG |
13325 graph_->Verify(false); // No full verify. | 13329 graph_->Verify(false); // No full verify. |
13326 #endif | 13330 #endif |
13327 } | 13331 } |
13328 | 13332 |
13329 } // namespace internal | 13333 } // namespace internal |
13330 } // namespace v8 | 13334 } // namespace v8 |
OLD | NEW |