| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart 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 file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef VM_ASSEMBLER_X64_H_ | 5 #ifndef VM_ASSEMBLER_X64_H_ |
| 6 #define VM_ASSEMBLER_X64_H_ | 6 #define VM_ASSEMBLER_X64_H_ |
| 7 | 7 |
| 8 #ifndef VM_ASSEMBLER_H_ | 8 #ifndef 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 |
| (...skipping 508 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 519 | 519 |
| 520 void testq(Register reg1, Register reg2); | 520 void testq(Register reg1, Register reg2); |
| 521 void testq(Register reg, const Immediate& imm); | 521 void testq(Register reg, const Immediate& imm); |
| 522 void TestImmediate(Register dst, const Immediate& imm, Register pp); | 522 void TestImmediate(Register dst, const Immediate& imm, Register pp); |
| 523 | 523 |
| 524 void andl(Register dst, Register src); | 524 void andl(Register dst, Register src); |
| 525 void andl(Register dst, const Immediate& imm); | 525 void andl(Register dst, const Immediate& imm); |
| 526 | 526 |
| 527 void orl(Register dst, Register src); | 527 void orl(Register dst, Register src); |
| 528 void orl(Register dst, const Immediate& imm); | 528 void orl(Register dst, const Immediate& imm); |
| 529 void orl(const Address& dst, Register src); |
| 529 | 530 |
| 530 void xorl(Register dst, Register src); | 531 void xorl(Register dst, Register src); |
| 531 | 532 |
| 532 void andq(Register dst, Register src); | 533 void andq(Register dst, Register src); |
| 533 void andq(Register dst, const Address& address); | 534 void andq(Register dst, const Address& address); |
| 534 void andq(Register dst, const Immediate& imm); | 535 void andq(Register dst, const Immediate& imm); |
| 535 void AndImmediate(Register dst, const Immediate& imm, Register pp); | 536 void AndImmediate(Register dst, const Immediate& imm, Register pp); |
| 536 | 537 |
| 537 void orq(Register dst, Register src); | 538 void orq(Register dst, Register src); |
| 538 void orq(Register dst, const Address& address); | 539 void orq(Register dst, const Address& address); |
| (...skipping 283 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 822 * Misc. functionality. | 823 * Misc. functionality. |
| 823 */ | 824 */ |
| 824 void SmiTag(Register reg) { | 825 void SmiTag(Register reg) { |
| 825 addq(reg, reg); | 826 addq(reg, reg); |
| 826 } | 827 } |
| 827 | 828 |
| 828 void SmiUntag(Register reg) { | 829 void SmiUntag(Register reg) { |
| 829 sarq(reg, Immediate(kSmiTagSize)); | 830 sarq(reg, Immediate(kSmiTagSize)); |
| 830 } | 831 } |
| 831 | 832 |
| 833 void ComputeRange(Register result, Register value, Label* miss); |
| 834 void UpdateRangeFeedback(Register value, |
| 835 intptr_t index, |
| 836 Register ic_data, |
| 837 Register scratch, |
| 838 Label* miss); |
| 839 |
| 832 int PreferredLoopAlignment() { return 16; } | 840 int PreferredLoopAlignment() { return 16; } |
| 833 void Align(int alignment, intptr_t offset); | 841 void Align(int alignment, intptr_t offset); |
| 834 void Bind(Label* label); | 842 void Bind(Label* label); |
| 835 void Jump(Label* label) { jmp(label); } | 843 void Jump(Label* label) { jmp(label); } |
| 836 | 844 |
| 837 void Comment(const char* format, ...) PRINTF_ATTRIBUTE(2, 3); | 845 void Comment(const char* format, ...) PRINTF_ATTRIBUTE(2, 3); |
| 838 static bool EmittingComments(); | 846 static bool EmittingComments(); |
| 839 | 847 |
| 840 const Code::Comments& GetCodeComments() const; | 848 const Code::Comments& GetCodeComments() const; |
| 841 | 849 |
| (...skipping 344 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1186 } | 1194 } |
| 1187 | 1195 |
| 1188 | 1196 |
| 1189 inline void Assembler::EmitOperandSizeOverride() { | 1197 inline void Assembler::EmitOperandSizeOverride() { |
| 1190 EmitUint8(0x66); | 1198 EmitUint8(0x66); |
| 1191 } | 1199 } |
| 1192 | 1200 |
| 1193 } // namespace dart | 1201 } // namespace dart |
| 1194 | 1202 |
| 1195 #endif // VM_ASSEMBLER_X64_H_ | 1203 #endif // VM_ASSEMBLER_X64_H_ |
| OLD | NEW |