OLD | NEW |
---|---|
1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
2 // All Rights Reserved. | 2 // All Rights Reserved. |
3 // | 3 // |
4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
5 // modification, are permitted provided that the following conditions are | 5 // modification, are permitted provided that the following conditions are |
6 // met: | 6 // met: |
7 // | 7 // |
8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
10 // | 10 // |
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
193 const Register r8 = { kRegister_r8_Code }; | 193 const Register r8 = { kRegister_r8_Code }; |
194 const Register r9 = { kRegister_r9_Code }; | 194 const Register r9 = { kRegister_r9_Code }; |
195 const Register r10 = { kRegister_r10_Code }; | 195 const Register r10 = { kRegister_r10_Code }; |
196 const Register r11 = { kRegister_r11_Code }; | 196 const Register r11 = { kRegister_r11_Code }; |
197 const Register r12 = { kRegister_r12_Code }; | 197 const Register r12 = { kRegister_r12_Code }; |
198 const Register r13 = { kRegister_r13_Code }; | 198 const Register r13 = { kRegister_r13_Code }; |
199 const Register r14 = { kRegister_r14_Code }; | 199 const Register r14 = { kRegister_r14_Code }; |
200 const Register r15 = { kRegister_r15_Code }; | 200 const Register r15 = { kRegister_r15_Code }; |
201 const Register no_reg = { kRegister_no_reg_Code }; | 201 const Register no_reg = { kRegister_no_reg_Code }; |
202 | 202 |
203 #ifdef _WIN64 | |
204 // Windows calling convention | |
mvstanton
2013/04/24 10:54:54
Can you mention fastcall here?
| |
205 const Register arg_reg_1 = rcx; | |
206 const Register arg_reg_2 = rdx; | |
207 const Register arg_reg_3 = r8; | |
208 const Register arg_reg_4 = r9; | |
209 #else | |
210 // AMD64 calling convention | |
211 const Register arg_reg_1 = rdi; | |
212 const Register arg_reg_2 = rsi; | |
213 const Register arg_reg_3 = rdx; | |
214 const Register arg_reg_4 = rcx; | |
215 #endif // _WIN64 | |
203 | 216 |
204 struct XMMRegister { | 217 struct XMMRegister { |
205 static const int kMaxNumRegisters = 16; | 218 static const int kMaxNumRegisters = 16; |
206 static const int kMaxNumAllocatableRegisters = 15; | 219 static const int kMaxNumAllocatableRegisters = 15; |
207 static int NumAllocatableRegisters() { | 220 static int NumAllocatableRegisters() { |
208 return kMaxNumAllocatableRegisters; | 221 return kMaxNumAllocatableRegisters; |
209 } | 222 } |
210 | 223 |
211 static int ToAllocationIndex(XMMRegister reg) { | 224 static int ToAllocationIndex(XMMRegister reg) { |
212 ASSERT(reg.code() != 0); | 225 ASSERT(reg.code() != 0); |
(...skipping 1425 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1638 private: | 1651 private: |
1639 Assembler* assembler_; | 1652 Assembler* assembler_; |
1640 #ifdef DEBUG | 1653 #ifdef DEBUG |
1641 int space_before_; | 1654 int space_before_; |
1642 #endif | 1655 #endif |
1643 }; | 1656 }; |
1644 | 1657 |
1645 } } // namespace v8::internal | 1658 } } // namespace v8::internal |
1646 | 1659 |
1647 #endif // V8_X64_ASSEMBLER_X64_H_ | 1660 #endif // V8_X64_ASSEMBLER_X64_H_ |
OLD | NEW |