| 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 995 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1006 // Inlined allocation of an instance of class 'cls', code has no runtime | 1006 // Inlined allocation of an instance of class 'cls', code has no runtime |
| 1007 // calls. Jump to 'failure' if the instance cannot be allocated here. | 1007 // calls. Jump to 'failure' if the instance cannot be allocated here. |
| 1008 // Allocated instance is returned in 'instance_reg'. | 1008 // Allocated instance is returned in 'instance_reg'. |
| 1009 // Only the tags field of the object is initialized. | 1009 // Only the tags field of the object is initialized. |
| 1010 // Loads large immediates from the object pool with pool pointer in PP if it | 1010 // Loads large immediates from the object pool with pool pointer in PP if it |
| 1011 // is not kNoRegister | 1011 // is not kNoRegister |
| 1012 void TryAllocate(const Class& cls, | 1012 void TryAllocate(const Class& cls, |
| 1013 Label* failure, | 1013 Label* failure, |
| 1014 bool near_jump, | 1014 bool near_jump, |
| 1015 Register instance_reg, | 1015 Register instance_reg, |
| 1016 Register pp); | 1016 Register pp, |
| 1017 Register temp); |
| 1017 | 1018 |
| 1018 void TryAllocateArray(intptr_t cid, | 1019 void TryAllocateArray(intptr_t cid, |
| 1019 intptr_t instance_size, | 1020 intptr_t instance_size, |
| 1020 Label* failure, | 1021 Label* failure, |
| 1021 bool near_jump, | 1022 bool near_jump, |
| 1022 Register instance, | 1023 Register instance, |
| 1023 Register end_address); | 1024 Register end_address, |
| 1025 Register temp); |
| 1024 | 1026 |
| 1025 // Debugging and bringup support. | 1027 // Debugging and bringup support. |
| 1026 void Stop(const char* message, bool fixed_length_encoding = false); | 1028 void Stop(const char* message, bool fixed_length_encoding = false); |
| 1027 void Unimplemented(const char* message); | 1029 void Unimplemented(const char* message); |
| 1028 void Untested(const char* message); | 1030 void Untested(const char* message); |
| 1029 void Unreachable(const char* message); | 1031 void Unreachable(const char* message); |
| 1030 | 1032 |
| 1031 static void InitializeMemoryWithBreakpoints(uword data, intptr_t length); | 1033 static void InitializeMemoryWithBreakpoints(uword data, intptr_t length); |
| 1032 | 1034 |
| 1033 static const char* RegisterName(Register reg); | 1035 static const char* RegisterName(Register reg); |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1214 } | 1216 } |
| 1215 | 1217 |
| 1216 | 1218 |
| 1217 inline void Assembler::EmitOperandSizeOverride() { | 1219 inline void Assembler::EmitOperandSizeOverride() { |
| 1218 EmitUint8(0x66); | 1220 EmitUint8(0x66); |
| 1219 } | 1221 } |
| 1220 | 1222 |
| 1221 } // namespace dart | 1223 } // namespace dart |
| 1222 | 1224 |
| 1223 #endif // VM_ASSEMBLER_X64_H_ | 1225 #endif // VM_ASSEMBLER_X64_H_ |
| OLD | NEW |