OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 #ifndef V8_X87_LITHIUM_CODEGEN_X87_H_ | 5 #ifndef V8_X87_LITHIUM_CODEGEN_X87_H_ |
6 #define V8_X87_LITHIUM_CODEGEN_X87_H_ | 6 #define V8_X87_LITHIUM_CODEGEN_X87_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include "src/x87/lithium-x87.h" | 9 #include "src/x87/lithium-x87.h" |
10 | 10 |
(...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
211 CallRuntime(function, argc, instr); | 211 CallRuntime(function, argc, instr); |
212 } | 212 } |
213 | 213 |
214 void CallRuntimeFromDeferred(Runtime::FunctionId id, | 214 void CallRuntimeFromDeferred(Runtime::FunctionId id, |
215 int argc, | 215 int argc, |
216 LInstruction* instr, | 216 LInstruction* instr, |
217 LOperand* context); | 217 LOperand* context); |
218 | 218 |
219 void LoadContextFromDeferred(LOperand* context); | 219 void LoadContextFromDeferred(LOperand* context); |
220 | 220 |
221 enum EDIState { | |
222 EDI_UNINITIALIZED, | |
223 EDI_CONTAINS_TARGET | |
224 }; | |
225 | |
226 // Generate a direct call to a known function. Expects the function | 221 // Generate a direct call to a known function. Expects the function |
227 // to be in edi. | 222 // to be in edi. |
228 void CallKnownFunction(Handle<JSFunction> function, | 223 void CallKnownFunction(Handle<JSFunction> function, |
229 int formal_parameter_count, | 224 int formal_parameter_count, int arity, |
230 int arity, | 225 LInstruction* instr); |
231 LInstruction* instr, | |
232 EDIState edi_state); | |
233 | 226 |
234 void RecordSafepointWithLazyDeopt(LInstruction* instr, | 227 void RecordSafepointWithLazyDeopt(LInstruction* instr, |
235 SafepointMode safepoint_mode); | 228 SafepointMode safepoint_mode); |
236 | 229 |
237 void RegisterEnvironmentForDeoptimization(LEnvironment* environment, | 230 void RegisterEnvironmentForDeoptimization(LEnvironment* environment, |
238 Safepoint::DeoptMode mode); | 231 Safepoint::DeoptMode mode); |
239 void DeoptimizeIf(Condition cc, LInstruction* instr, const char* detail, | 232 void DeoptimizeIf(Condition cc, LInstruction* instr, const char* detail, |
240 Deoptimizer::BailoutType bailout_type); | 233 Deoptimizer::BailoutType bailout_type); |
241 void DeoptimizeIf(Condition cc, LInstruction* instr, const char* detail); | 234 void DeoptimizeIf(Condition cc, LInstruction* instr, const char* detail); |
242 | 235 |
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
507 Label exit_; | 500 Label exit_; |
508 Label* external_exit_; | 501 Label* external_exit_; |
509 Label done_; | 502 Label done_; |
510 int instruction_index_; | 503 int instruction_index_; |
511 LCodeGen::X87Stack x87_stack_; | 504 LCodeGen::X87Stack x87_stack_; |
512 }; | 505 }; |
513 | 506 |
514 } } // namespace v8::internal | 507 } } // namespace v8::internal |
515 | 508 |
516 #endif // V8_X87_LITHIUM_CODEGEN_X87_H_ | 509 #endif // V8_X87_LITHIUM_CODEGEN_X87_H_ |
OLD | NEW |