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 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
107 // LOperand is loaded into scratch, unless already a register. | 107 // LOperand is loaded into scratch, unless already a register. |
108 Register EmitLoadRegister(LOperand* op, Register scratch); | 108 Register EmitLoadRegister(LOperand* op, Register scratch); |
109 | 109 |
110 // LOperand must be a double register. | 110 // LOperand must be a double register. |
111 DoubleRegister ToDoubleRegister(LOperand* op) const; | 111 DoubleRegister ToDoubleRegister(LOperand* op) const; |
112 | 112 |
113 // LOperand is loaded into dbl_scratch, unless already a double register. | 113 // LOperand is loaded into dbl_scratch, unless already a double register. |
114 DoubleRegister EmitLoadDoubleRegister(LOperand* op, | 114 DoubleRegister EmitLoadDoubleRegister(LOperand* op, |
115 FloatRegister flt_scratch, | 115 FloatRegister flt_scratch, |
116 DoubleRegister dbl_scratch); | 116 DoubleRegister dbl_scratch); |
117 int ToInteger32(LConstantOperand* op) const; | 117 int ToRepresentation(LConstantOperand* op, const Representation& r) const; |
| 118 int32_t ToInteger32(LConstantOperand* op) const; |
118 Smi* ToSmi(LConstantOperand* op) const; | 119 Smi* ToSmi(LConstantOperand* op) const; |
119 double ToDouble(LConstantOperand* op) const; | 120 double ToDouble(LConstantOperand* op) const; |
120 Operand ToOperand(LOperand* op); | 121 Operand ToOperand(LOperand* op); |
121 MemOperand ToMemOperand(LOperand* op) const; | 122 MemOperand ToMemOperand(LOperand* op) const; |
122 // Returns a MemOperand pointing to the high word of a DoubleStackSlot. | 123 // Returns a MemOperand pointing to the high word of a DoubleStackSlot. |
123 MemOperand ToHighMemOperand(LOperand* op) const; | 124 MemOperand ToHighMemOperand(LOperand* op) const; |
124 | 125 |
125 bool IsInteger32(LConstantOperand* op) const; | 126 bool IsInteger32(LConstantOperand* op) const; |
126 bool IsSmi(LConstantOperand* op) const; | 127 bool IsSmi(LConstantOperand* op) const; |
127 Handle<Object> ToHandle(LConstantOperand* op) const; | 128 Handle<Object> ToHandle(LConstantOperand* op) const; |
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
277 Safepoint::DeoptMode mode); | 278 Safepoint::DeoptMode mode); |
278 void DeoptimizeIf(Condition cc, | 279 void DeoptimizeIf(Condition cc, |
279 LEnvironment* environment, | 280 LEnvironment* environment, |
280 Deoptimizer::BailoutType bailout_type, | 281 Deoptimizer::BailoutType bailout_type, |
281 Register src1 = zero_reg, | 282 Register src1 = zero_reg, |
282 const Operand& src2 = Operand(zero_reg)); | 283 const Operand& src2 = Operand(zero_reg)); |
283 void DeoptimizeIf(Condition cc, | 284 void DeoptimizeIf(Condition cc, |
284 LEnvironment* environment, | 285 LEnvironment* environment, |
285 Register src1 = zero_reg, | 286 Register src1 = zero_reg, |
286 const Operand& src2 = Operand(zero_reg)); | 287 const Operand& src2 = Operand(zero_reg)); |
287 void SoftDeoptimize(LEnvironment* environment, | 288 void ApplyCheckIf(Condition cc, |
288 Register src1 = zero_reg, | 289 LBoundsCheck* check, |
289 const Operand& src2 = Operand(zero_reg)); | 290 Register src1 = zero_reg, |
| 291 const Operand& src2 = Operand(zero_reg)); |
290 | 292 |
291 void AddToTranslation(Translation* translation, | 293 void AddToTranslation(Translation* translation, |
292 LOperand* op, | 294 LOperand* op, |
293 bool is_tagged, | 295 bool is_tagged, |
294 bool is_uint32); | 296 bool is_uint32); |
295 void RegisterDependentCodeForEmbeddedMaps(Handle<Code> code); | 297 void RegisterDependentCodeForEmbeddedMaps(Handle<Code> code); |
296 void PopulateDeoptimizationData(Handle<Code> code); | 298 void PopulateDeoptimizationData(Handle<Code> code); |
297 int DefineDeoptimizationLiteral(Handle<Object> literal); | 299 int DefineDeoptimizationLiteral(Handle<Object> literal); |
298 | 300 |
299 void PopulateDeoptimizationLiteralsWithInlinedFunctions(); | 301 void PopulateDeoptimizationLiteralsWithInlinedFunctions(); |
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
507 LCodeGen* codegen_; | 509 LCodeGen* codegen_; |
508 Label entry_; | 510 Label entry_; |
509 Label exit_; | 511 Label exit_; |
510 Label* external_exit_; | 512 Label* external_exit_; |
511 int instruction_index_; | 513 int instruction_index_; |
512 }; | 514 }; |
513 | 515 |
514 } } // namespace v8::internal | 516 } } // namespace v8::internal |
515 | 517 |
516 #endif // V8_MIPS_LITHIUM_CODEGEN_MIPS_H_ | 518 #endif // V8_MIPS_LITHIUM_CODEGEN_MIPS_H_ |
OLD | NEW |