OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_X64. | 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_X64. |
6 #if defined(TARGET_ARCH_X64) | 6 #if defined(TARGET_ARCH_X64) |
7 | 7 |
8 #include "vm/code_generator.h" | 8 #include "vm/code_generator.h" |
9 | 9 |
10 #include "lib/error.h" | 10 #include "lib/error.h" |
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
184 const ParsedFunction& parsed_function) | 184 const ParsedFunction& parsed_function) |
185 : assembler_(assembler), | 185 : assembler_(assembler), |
186 parsed_function_(parsed_function), | 186 parsed_function_(parsed_function), |
187 locals_space_size_(-1), | 187 locals_space_size_(-1), |
188 state_(NULL), | 188 state_(NULL), |
189 pc_descriptors_list_(NULL), | 189 pc_descriptors_list_(NULL), |
190 exception_handlers_list_(NULL), | 190 exception_handlers_list_(NULL), |
191 try_index_(CatchClauseNode::kInvalidTryIndex) { | 191 try_index_(CatchClauseNode::kInvalidTryIndex) { |
192 ASSERT(assembler_ != NULL); | 192 ASSERT(assembler_ != NULL); |
193 ASSERT(parsed_function.node_sequence() != NULL); | 193 ASSERT(parsed_function.node_sequence() != NULL); |
194 ASSERT(Isolate::Current()->long_jump_base()->IsSafeToJump()); | |
195 pc_descriptors_list_ = new CodeGenerator::DescriptorList(); | 194 pc_descriptors_list_ = new CodeGenerator::DescriptorList(); |
196 exception_handlers_list_ = new CodeGenerator::HandlerList(); | 195 exception_handlers_list_ = new CodeGenerator::HandlerList(); |
197 } | 196 } |
198 | 197 |
199 | 198 |
200 bool CodeGenerator::IsResultNeeded(AstNode* node) const { | 199 bool CodeGenerator::IsResultNeeded(AstNode* node) const { |
201 return !state()->IsRootNode(node); | 200 return !state()->IsRootNode(node); |
202 } | 201 } |
203 | 202 |
204 | 203 |
(...skipping 2589 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2794 const Error& error = Error::Handle( | 2793 const Error& error = Error::Handle( |
2795 Parser::FormatError(script, token_index, "Error", format, args)); | 2794 Parser::FormatError(script, token_index, "Error", format, args)); |
2796 va_end(args); | 2795 va_end(args); |
2797 Isolate::Current()->long_jump_base()->Jump(1, error); | 2796 Isolate::Current()->long_jump_base()->Jump(1, error); |
2798 UNREACHABLE(); | 2797 UNREACHABLE(); |
2799 } | 2798 } |
2800 | 2799 |
2801 } // namespace dart | 2800 } // namespace dart |
2802 | 2801 |
2803 #endif // defined TARGET_ARCH_X64 | 2802 #endif // defined TARGET_ARCH_X64 |
OLD | NEW |