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 #ifndef VM_FLOW_GRAPH_COMPILER_IA32_H_ | 5 #ifndef VM_FLOW_GRAPH_COMPILER_IA32_H_ |
6 #define VM_FLOW_GRAPH_COMPILER_IA32_H_ | 6 #define VM_FLOW_GRAPH_COMPILER_IA32_H_ |
7 | 7 |
8 #ifndef VM_FLOW_GRAPH_COMPILER_H_ | 8 #ifndef VM_FLOW_GRAPH_COMPILER_H_ |
9 #error Include flow_graph_compiler.h instead of flow_graph_compiler_ia32.h. | 9 #error Include flow_graph_compiler.h instead of flow_graph_compiler_ia32.h. |
10 #endif | 10 #endif |
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
233 | 233 |
234 // Array/list element address computations. | 234 // Array/list element address computations. |
235 static FieldAddress ElementAddressForIntIndex(intptr_t cid, | 235 static FieldAddress ElementAddressForIntIndex(intptr_t cid, |
236 Register array, | 236 Register array, |
237 intptr_t offset); | 237 intptr_t offset); |
238 static FieldAddress ElementAddressForRegIndex(intptr_t cid, | 238 static FieldAddress ElementAddressForRegIndex(intptr_t cid, |
239 Register array, | 239 Register array, |
240 Register index); | 240 Register index); |
241 | 241 |
242 private: | 242 private: |
| 243 void EmitFrameEntry(); |
| 244 |
243 void AddStaticCallTarget(const Function& function); | 245 void AddStaticCallTarget(const Function& function); |
244 | 246 |
245 void GenerateDeferredCode(); | 247 void GenerateDeferredCode(); |
246 | 248 |
247 void EmitInstructionPrologue(Instruction* instr); | 249 void EmitInstructionPrologue(Instruction* instr); |
248 void EmitInstructionEpilogue(Instruction* instr); | 250 void EmitInstructionEpilogue(Instruction* instr); |
249 | 251 |
250 // Emit code to load a Value into register 'dst'. | 252 // Emit code to load a Value into register 'dst'. |
251 void LoadValue(Register dst, Value* value); | 253 void LoadValue(Register dst, Value* value); |
252 | 254 |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
353 // that should be used when deoptimizing we store it in this variable. | 355 // that should be used when deoptimizing we store it in this variable. |
354 // In future AddDeoptStub should be moved out of the instruction template. | 356 // In future AddDeoptStub should be moved out of the instruction template. |
355 Environment* pending_deoptimization_env_; | 357 Environment* pending_deoptimization_env_; |
356 | 358 |
357 DISALLOW_COPY_AND_ASSIGN(FlowGraphCompiler); | 359 DISALLOW_COPY_AND_ASSIGN(FlowGraphCompiler); |
358 }; | 360 }; |
359 | 361 |
360 } // namespace dart | 362 } // namespace dart |
361 | 363 |
362 #endif // VM_FLOW_GRAPH_COMPILER_IA32_H_ | 364 #endif // VM_FLOW_GRAPH_COMPILER_IA32_H_ |
OLD | NEW |