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_X64_LITHIUM_CODEGEN_X64_H_ | 5 #ifndef V8_X64_LITHIUM_CODEGEN_X64_H_ |
6 #define V8_X64_LITHIUM_CODEGEN_X64_H_ | 6 #define V8_X64_LITHIUM_CODEGEN_X64_H_ |
7 | 7 |
8 #include "src/x64/lithium-x64.h" | 8 #include "src/x64/lithium-x64.h" |
9 | 9 |
10 #include "src/base/logging.h" | 10 #include "src/base/logging.h" |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
55 info()->requires_frame(); | 55 info()->requires_frame(); |
56 } | 56 } |
57 bool NeedsDeferredFrame() const { | 57 bool NeedsDeferredFrame() const { |
58 return !NeedsEagerFrame() && info()->is_deferred_calling(); | 58 return !NeedsEagerFrame() && info()->is_deferred_calling(); |
59 } | 59 } |
60 | 60 |
61 // Support for converting LOperands to assembler types. | 61 // Support for converting LOperands to assembler types. |
62 Register ToRegister(LOperand* op) const; | 62 Register ToRegister(LOperand* op) const; |
63 XMMRegister ToDoubleRegister(LOperand* op) const; | 63 XMMRegister ToDoubleRegister(LOperand* op) const; |
64 bool IsInteger32Constant(LConstantOperand* op) const; | 64 bool IsInteger32Constant(LConstantOperand* op) const; |
| 65 bool IsExternalConstant(LConstantOperand* op) const; |
65 bool IsDehoistedKeyConstant(LConstantOperand* op) const; | 66 bool IsDehoistedKeyConstant(LConstantOperand* op) const; |
66 bool IsSmiConstant(LConstantOperand* op) const; | 67 bool IsSmiConstant(LConstantOperand* op) const; |
67 int32_t ToRepresentation(LConstantOperand* op, const Representation& r) const; | 68 int32_t ToRepresentation(LConstantOperand* op, const Representation& r) const; |
68 int32_t ToInteger32(LConstantOperand* op) const; | 69 int32_t ToInteger32(LConstantOperand* op) const; |
69 Smi* ToSmi(LConstantOperand* op) const; | 70 Smi* ToSmi(LConstantOperand* op) const; |
70 double ToDouble(LConstantOperand* op) const; | 71 double ToDouble(LConstantOperand* op) const; |
71 ExternalReference ToExternalReference(LConstantOperand* op) const; | 72 ExternalReference ToExternalReference(LConstantOperand* op) const; |
72 Handle<Object> ToHandle(LConstantOperand* op) const; | 73 Handle<Object> ToHandle(LConstantOperand* op) const; |
73 Operand ToOperand(LOperand* op) const; | 74 Operand ToOperand(LOperand* op) const; |
74 | 75 |
(...skipping 314 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
389 Label entry_; | 390 Label entry_; |
390 Label exit_; | 391 Label exit_; |
391 Label done_; | 392 Label done_; |
392 Label* external_exit_; | 393 Label* external_exit_; |
393 int instruction_index_; | 394 int instruction_index_; |
394 }; | 395 }; |
395 | 396 |
396 } } // namespace v8::internal | 397 } } // namespace v8::internal |
397 | 398 |
398 #endif // V8_X64_LITHIUM_CODEGEN_X64_H_ | 399 #endif // V8_X64_LITHIUM_CODEGEN_X64_H_ |
OLD | NEW |