OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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 201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 SwVfpRegister flt_scratch, | 212 SwVfpRegister flt_scratch, |
213 DoubleRegister dbl_scratch); | 213 DoubleRegister dbl_scratch); |
214 | 214 |
215 int ToInteger32(LConstantOperand* op) const; | 215 int ToInteger32(LConstantOperand* op) const; |
216 Operand ToOperand(LOperand* op); | 216 Operand ToOperand(LOperand* op); |
217 MemOperand ToMemOperand(LOperand* op) const; | 217 MemOperand ToMemOperand(LOperand* op) const; |
218 | 218 |
219 // Specific math operations - used from DoUnaryMathOperation. | 219 // Specific math operations - used from DoUnaryMathOperation. |
220 void EmitIntegerMathAbs(LUnaryMathOperation* instr); | 220 void EmitIntegerMathAbs(LUnaryMathOperation* instr); |
221 void DoMathAbs(LUnaryMathOperation* instr); | 221 void DoMathAbs(LUnaryMathOperation* instr); |
| 222 void EmitVFPTruncate(VFPRoundingMode rounding_mode, |
| 223 SwVfpRegister result, |
| 224 DwVfpRegister double_input, |
| 225 Register scratch1, |
| 226 Register scratch2); |
222 void DoMathFloor(LUnaryMathOperation* instr); | 227 void DoMathFloor(LUnaryMathOperation* instr); |
223 void DoMathSqrt(LUnaryMathOperation* instr); | 228 void DoMathSqrt(LUnaryMathOperation* instr); |
224 | 229 |
225 // Support for recording safepoint and position information. | 230 // Support for recording safepoint and position information. |
226 void RecordSafepoint(LPointerMap* pointers, | 231 void RecordSafepoint(LPointerMap* pointers, |
227 Safepoint::Kind kind, | 232 Safepoint::Kind kind, |
228 int arguments, | 233 int arguments, |
229 int deoptimization_index); | 234 int deoptimization_index); |
230 void RecordSafepoint(LPointerMap* pointers, int deoptimization_index); | 235 void RecordSafepoint(LPointerMap* pointers, int deoptimization_index); |
231 void RecordSafepointWithRegisters(LPointerMap* pointers, | 236 void RecordSafepointWithRegisters(LPointerMap* pointers, |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
310 private: | 315 private: |
311 LCodeGen* codegen_; | 316 LCodeGen* codegen_; |
312 Label entry_; | 317 Label entry_; |
313 Label exit_; | 318 Label exit_; |
314 Label* external_exit_; | 319 Label* external_exit_; |
315 }; | 320 }; |
316 | 321 |
317 } } // namespace v8::internal | 322 } } // namespace v8::internal |
318 | 323 |
319 #endif // V8_ARM_LITHIUM_CODEGEN_ARM_H_ | 324 #endif // V8_ARM_LITHIUM_CODEGEN_ARM_H_ |
OLD | NEW |