OLD | NEW |
1 // Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE.md file. | 3 // BSD-style license that can be found in the LICENSE.md file. |
4 | 4 |
5 #ifndef SRC_VM_ASSEMBLER_X64_H_ | 5 #ifndef SRC_VM_ASSEMBLER_X64_H_ |
6 #define SRC_VM_ASSEMBLER_X64_H_ | 6 #define SRC_VM_ASSEMBLER_X64_H_ |
7 | 7 |
8 #ifndef SRC_VM_ASSEMBLER_H_ | 8 #ifndef SRC_VM_ASSEMBLER_H_ |
9 #error Do not include assembler_x64.h directly; use assembler.h instead. | 9 #error Do not include assembler_x64.h directly; use assembler.h instead. |
10 #endif | 10 #endif |
11 | 11 |
12 #include "src/shared/assert.h" | 12 #include "src/shared/assert.h" |
13 #include "src/shared/utils.h" | 13 #include "src/shared/utils.h" |
14 | 14 |
15 namespace fletch { | 15 namespace dartino { |
16 | 16 |
17 extern const char* kLocalLabelPrefix; | 17 extern const char* kLocalLabelPrefix; |
18 | 18 |
19 enum Register { | 19 enum Register { |
20 RAX = 0, | 20 RAX = 0, |
21 RCX = 1, | 21 RCX = 1, |
22 RDX = 2, | 22 RDX = 2, |
23 RBX = 3, | 23 RBX = 3, |
24 RSP = 4, | 24 RSP = 4, |
25 RBP = 5, | 25 RBP = 5, |
(...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
352 // wrapper too. | 352 // wrapper too. |
353 Register Wrap(Register reg) { return reg; } | 353 Register Wrap(Register reg) { return reg; } |
354 const Address* Wrap(const Address& address) { return &address; } | 354 const Address* Wrap(const Address& address) { return &address; } |
355 const Immediate* Wrap(const Immediate& immediate) { return &immediate; } | 355 const Immediate* Wrap(const Immediate& immediate) { return &immediate; } |
356 }; | 356 }; |
357 | 357 |
358 #undef INSTRUCTION_0 | 358 #undef INSTRUCTION_0 |
359 #undef INSTRUCTION_1 | 359 #undef INSTRUCTION_1 |
360 #undef INSTRUCTION_2 | 360 #undef INSTRUCTION_2 |
361 | 361 |
362 } // namespace fletch | 362 } // namespace dartino |
363 | 363 |
364 #endif // SRC_VM_ASSEMBLER_X64_H_ | 364 #endif // SRC_VM_ASSEMBLER_X64_H_ |
OLD | NEW |