| 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 RUNTIME_VM_ASSEMBLER_ARM_H_ | 5 #ifndef RUNTIME_VM_ASSEMBLER_ARM_H_ |
| 6 #define RUNTIME_VM_ASSEMBLER_ARM_H_ | 6 #define RUNTIME_VM_ASSEMBLER_ARM_H_ |
| 7 | 7 |
| 8 #ifndef RUNTIME_VM_ASSEMBLER_H_ | 8 #ifndef RUNTIME_VM_ASSEMBLER_H_ |
| 9 #error Do not include assembler_arm.h directly; use assembler.h instead. | 9 #error Do not include assembler_arm.h directly; use assembler.h instead. |
| 10 #endif | 10 #endif |
| (...skipping 953 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 964 Heap::Space space); | 964 Heap::Space space); |
| 965 | 965 |
| 966 Address ElementAddressForIntIndex(bool is_load, | 966 Address ElementAddressForIntIndex(bool is_load, |
| 967 bool is_external, | 967 bool is_external, |
| 968 intptr_t cid, | 968 intptr_t cid, |
| 969 intptr_t index_scale, | 969 intptr_t index_scale, |
| 970 Register array, | 970 Register array, |
| 971 intptr_t index, | 971 intptr_t index, |
| 972 Register temp); | 972 Register temp); |
| 973 | 973 |
| 974 void LoadElementAddressForIntIndex(Register address, |
| 975 bool is_load, |
| 976 bool is_external, |
| 977 intptr_t cid, |
| 978 intptr_t index_scale, |
| 979 Register array, |
| 980 intptr_t index); |
| 981 |
| 974 Address ElementAddressForRegIndex(bool is_load, | 982 Address ElementAddressForRegIndex(bool is_load, |
| 975 bool is_external, | 983 bool is_external, |
| 976 intptr_t cid, | 984 intptr_t cid, |
| 977 intptr_t index_scale, | 985 intptr_t index_scale, |
| 978 Register array, | 986 Register array, |
| 979 Register index); | 987 Register index); |
| 980 | 988 |
| 989 void LoadElementAddressForRegIndex(Register address, |
| 990 bool is_load, |
| 991 bool is_external, |
| 992 intptr_t cid, |
| 993 intptr_t index_scale, |
| 994 Register array, |
| 995 Register index); |
| 996 |
| 997 void LoadHalfWordUnaligned(Register dst, Register addr, Register tmp); |
| 998 void LoadHalfWordUnsignedUnaligned(Register dst, Register addr, Register tmp); |
| 999 void StoreHalfWordUnaligned(Register src, Register addr, Register tmp); |
| 1000 void LoadWordUnaligned(Register dst, Register addr, Register tmp); |
| 1001 void StoreWordUnaligned(Register src, Register addr, Register tmp); |
| 1002 |
| 981 // If allocation tracing for |cid| is enabled, will jump to |trace| label, | 1003 // If allocation tracing for |cid| is enabled, will jump to |trace| label, |
| 982 // which will allocate in the runtime where tracing occurs. | 1004 // which will allocate in the runtime where tracing occurs. |
| 983 void MaybeTraceAllocation(intptr_t cid, | 1005 void MaybeTraceAllocation(intptr_t cid, |
| 984 Register temp_reg, | 1006 Register temp_reg, |
| 985 Label* trace); | 1007 Label* trace); |
| 986 | 1008 |
| 987 // Inlined allocation of an instance of class 'cls', code has no runtime | 1009 // Inlined allocation of an instance of class 'cls', code has no runtime |
| 988 // calls. Jump to 'failure' if the instance cannot be allocated here. | 1010 // calls. Jump to 'failure' if the instance cannot be allocated here. |
| 989 // Allocated instance is returned in 'instance_reg'. | 1011 // Allocated instance is returned in 'instance_reg'. |
| 990 // Only the tags field of the object is initialized. | 1012 // Only the tags field of the object is initialized. |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1172 Register value, | 1194 Register value, |
| 1173 Label* no_update); | 1195 Label* no_update); |
| 1174 | 1196 |
| 1175 DISALLOW_ALLOCATION(); | 1197 DISALLOW_ALLOCATION(); |
| 1176 DISALLOW_COPY_AND_ASSIGN(Assembler); | 1198 DISALLOW_COPY_AND_ASSIGN(Assembler); |
| 1177 }; | 1199 }; |
| 1178 | 1200 |
| 1179 } // namespace dart | 1201 } // namespace dart |
| 1180 | 1202 |
| 1181 #endif // RUNTIME_VM_ASSEMBLER_ARM_H_ | 1203 #endif // RUNTIME_VM_ASSEMBLER_ARM_H_ |
| OLD | NEW |