| 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_IA32_H_ | 5 #ifndef VM_ASSEMBLER_IA32_H_ |
| 6 #define VM_ASSEMBLER_IA32_H_ | 6 #define VM_ASSEMBLER_IA32_H_ |
| 7 | 7 |
| 8 #ifndef VM_ASSEMBLER_H_ | 8 #ifndef VM_ASSEMBLER_H_ |
| 9 #error Do not include assembler_ia32.h directly; use assembler.h instead. | 9 #error Do not include assembler_ia32.h directly; use assembler.h instead. |
| 10 #endif | 10 #endif |
| (...skipping 771 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 782 | 782 |
| 783 void SmiUntag(Register reg) { | 783 void SmiUntag(Register reg) { |
| 784 sarl(reg, Immediate(kSmiTagSize)); | 784 sarl(reg, Immediate(kSmiTagSize)); |
| 785 } | 785 } |
| 786 | 786 |
| 787 intptr_t PreferredLoopAlignment() { return 16; } | 787 intptr_t PreferredLoopAlignment() { return 16; } |
| 788 void Align(intptr_t alignment, intptr_t offset); | 788 void Align(intptr_t alignment, intptr_t offset); |
| 789 void Bind(Label* label); | 789 void Bind(Label* label); |
| 790 void Jump(Label* label) { jmp(label); } | 790 void Jump(Label* label) { jmp(label); } |
| 791 | 791 |
| 792 // Address of code at offset. |
| 793 uword CodeAddress(intptr_t offset) { |
| 794 return buffer_.Address(offset); |
| 795 } |
| 796 |
| 792 intptr_t CodeSize() const { return buffer_.Size(); } | 797 intptr_t CodeSize() const { return buffer_.Size(); } |
| 793 intptr_t prologue_offset() const { return prologue_offset_; } | 798 intptr_t prologue_offset() const { return prologue_offset_; } |
| 794 | 799 |
| 795 // Count the fixups that produce a pointer offset, without processing | 800 // Count the fixups that produce a pointer offset, without processing |
| 796 // the fixups. | 801 // the fixups. |
| 797 intptr_t CountPointerOffsets() const { | 802 intptr_t CountPointerOffsets() const { |
| 798 return buffer_.CountPointerOffsets(); | 803 return buffer_.CountPointerOffsets(); |
| 799 } | 804 } |
| 800 const ZoneGrowableArray<intptr_t>& GetPointerOffsets() const { | 805 const ZoneGrowableArray<intptr_t>& GetPointerOffsets() const { |
| 801 return buffer_.pointer_offsets(); | 806 return buffer_.pointer_offsets(); |
| (...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1022 } | 1027 } |
| 1023 | 1028 |
| 1024 | 1029 |
| 1025 inline void Assembler::EmitOperandSizeOverride() { | 1030 inline void Assembler::EmitOperandSizeOverride() { |
| 1026 EmitUint8(0x66); | 1031 EmitUint8(0x66); |
| 1027 } | 1032 } |
| 1028 | 1033 |
| 1029 } // namespace dart | 1034 } // namespace dart |
| 1030 | 1035 |
| 1031 #endif // VM_ASSEMBLER_IA32_H_ | 1036 #endif // VM_ASSEMBLER_IA32_H_ |
| OLD | NEW |