OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
270 CallKind call_kind, | 270 CallKind call_kind, |
271 A1State a1_state); | 271 A1State a1_state); |
272 | 272 |
273 void LoadHeapObject(Register result, Handle<HeapObject> object); | 273 void LoadHeapObject(Register result, Handle<HeapObject> object); |
274 | 274 |
275 void RecordSafepointWithLazyDeopt(LInstruction* instr, | 275 void RecordSafepointWithLazyDeopt(LInstruction* instr, |
276 SafepointMode safepoint_mode); | 276 SafepointMode safepoint_mode); |
277 | 277 |
278 void RegisterEnvironmentForDeoptimization(LEnvironment* environment, | 278 void RegisterEnvironmentForDeoptimization(LEnvironment* environment, |
279 Safepoint::DeoptMode mode); | 279 Safepoint::DeoptMode mode); |
280 void DeoptimizeIf(Condition cc, | 280 void DeoptimizeIf(Condition condition, |
281 LEnvironment* environment, | 281 LEnvironment* environment, |
282 Deoptimizer::BailoutType bailout_type, | 282 Deoptimizer::BailoutType bailout_type, |
283 Register src1 = zero_reg, | 283 Register src1 = zero_reg, |
284 const Operand& src2 = Operand(zero_reg)); | 284 const Operand& src2 = Operand(zero_reg)); |
285 void DeoptimizeIf(Condition cc, | 285 void DeoptimizeIf(Condition condition, |
286 LEnvironment* environment, | 286 LEnvironment* environment, |
287 Register src1 = zero_reg, | 287 Register src1 = zero_reg, |
288 const Operand& src2 = Operand(zero_reg)); | 288 const Operand& src2 = Operand(zero_reg)); |
289 void ApplyCheckIf(Condition cc, | 289 void ApplyCheckIf(Condition condition, |
290 LBoundsCheck* check, | 290 LBoundsCheck* check, |
291 Register src1 = zero_reg, | 291 Register src1 = zero_reg, |
292 const Operand& src2 = Operand(zero_reg)); | 292 const Operand& src2 = Operand(zero_reg)); |
293 | 293 |
294 void AddToTranslation(LEnvironment* environment, | 294 void AddToTranslation(LEnvironment* environment, |
295 Translation* translation, | 295 Translation* translation, |
296 LOperand* op, | 296 LOperand* op, |
297 bool is_tagged, | 297 bool is_tagged, |
298 bool is_uint32, | 298 bool is_uint32, |
299 int* object_index_pointer, | 299 int* object_index_pointer, |
(...skipping 22 matching lines...) Expand all Loading... |
322 void RecordSafepointWithRegistersAndDoubles(LPointerMap* pointers, | 322 void RecordSafepointWithRegistersAndDoubles(LPointerMap* pointers, |
323 int arguments, | 323 int arguments, |
324 Safepoint::DeoptMode mode); | 324 Safepoint::DeoptMode mode); |
325 void RecordPosition(int position); | 325 void RecordPosition(int position); |
326 void RecordAndUpdatePosition(int position); | 326 void RecordAndUpdatePosition(int position); |
327 | 327 |
328 static Condition TokenToCondition(Token::Value op, bool is_unsigned); | 328 static Condition TokenToCondition(Token::Value op, bool is_unsigned); |
329 void EmitGoto(int block); | 329 void EmitGoto(int block); |
330 template<class InstrType> | 330 template<class InstrType> |
331 void EmitBranch(InstrType instr, | 331 void EmitBranch(InstrType instr, |
332 Condition cc, | 332 Condition condition, |
333 Register src1, | 333 Register src1, |
334 const Operand& src2); | 334 const Operand& src2); |
335 template<class InstrType> | 335 template<class InstrType> |
336 void EmitBranchF(InstrType instr, | 336 void EmitBranchF(InstrType instr, |
337 Condition cc, | 337 Condition condition, |
338 FPURegister src1, | 338 FPURegister src1, |
339 FPURegister src2); | 339 FPURegister src2); |
| 340 template<class InstrType> |
| 341 void EmitFalseBranchF(InstrType instr, |
| 342 Condition condition, |
| 343 FPURegister src1, |
| 344 FPURegister src2); |
340 void EmitCmpI(LOperand* left, LOperand* right); | 345 void EmitCmpI(LOperand* left, LOperand* right); |
341 void EmitNumberUntagD(Register input, | 346 void EmitNumberUntagD(Register input, |
342 DoubleRegister result, | 347 DoubleRegister result, |
343 bool allow_undefined_as_nan, | 348 bool allow_undefined_as_nan, |
344 bool deoptimize_on_minus_zero, | 349 bool deoptimize_on_minus_zero, |
345 LEnvironment* env, | 350 LEnvironment* env, |
346 NumberUntagDMode mode); | 351 NumberUntagDMode mode); |
347 | 352 |
348 // Emits optimized code for typeof x == "y". Modifies input register. | 353 // Emits optimized code for typeof x == "y". Modifies input register. |
349 // Returns the condition on which a final split to | 354 // Returns the condition on which a final split to |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
510 LCodeGen* codegen_; | 515 LCodeGen* codegen_; |
511 Label entry_; | 516 Label entry_; |
512 Label exit_; | 517 Label exit_; |
513 Label* external_exit_; | 518 Label* external_exit_; |
514 int instruction_index_; | 519 int instruction_index_; |
515 }; | 520 }; |
516 | 521 |
517 } } // namespace v8::internal | 522 } } // namespace v8::internal |
518 | 523 |
519 #endif // V8_MIPS_LITHIUM_CODEGEN_MIPS_H_ | 524 #endif // V8_MIPS_LITHIUM_CODEGEN_MIPS_H_ |
OLD | NEW |