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_MIPS_H_ | 5 #ifndef VM_ASSEMBLER_MIPS_H_ |
6 #define VM_ASSEMBLER_MIPS_H_ | 6 #define VM_ASSEMBLER_MIPS_H_ |
7 | 7 |
8 #ifndef VM_ASSEMBLER_H_ | 8 #ifndef VM_ASSEMBLER_H_ |
9 #error Do not include assembler_mips.h directly; use assembler.h instead. | 9 #error Do not include assembler_mips.h directly; use assembler.h instead. |
10 #endif | 10 #endif |
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
195 // to set up the frame and save a PC which can be used to figure out the | 195 // to set up the frame and save a PC which can be used to figure out the |
196 // RawInstruction object corresponding to the code running in the frame. | 196 // RawInstruction object corresponding to the code running in the frame. |
197 // See EnterDartFrame. There are 6 instructions before we know the PC. | 197 // See EnterDartFrame. There are 6 instructions before we know the PC. |
198 static const intptr_t kEntryPointToPcMarkerOffset = 6 * Instr::kInstrSize; | 198 static const intptr_t kEntryPointToPcMarkerOffset = 6 * Instr::kInstrSize; |
199 static intptr_t EntryPointToPcMarkerOffset() { | 199 static intptr_t EntryPointToPcMarkerOffset() { |
200 return kEntryPointToPcMarkerOffset; | 200 return kEntryPointToPcMarkerOffset; |
201 } | 201 } |
202 | 202 |
203 void UpdateAllocationStats(intptr_t cid, | 203 void UpdateAllocationStats(intptr_t cid, |
204 Register temp_reg, | 204 Register temp_reg, |
205 Heap::Space space = Heap::kNew); | 205 Heap::Space space); |
206 | 206 |
207 void UpdateAllocationStatsWithSize(intptr_t cid, | 207 void UpdateAllocationStatsWithSize(intptr_t cid, |
208 Register size_reg, | 208 Register size_reg, |
209 Register temp_reg, | 209 Register temp_reg, |
210 Heap::Space space = Heap::kNew); | 210 Heap::Space space); |
211 | 211 |
212 | 212 |
213 // Inlined allocation of an instance of class 'cls', code has no runtime | 213 // Inlined allocation of an instance of class 'cls', code has no runtime |
214 // calls. Jump to 'failure' if the instance cannot be allocated here. | 214 // calls. Jump to 'failure' if the instance cannot be allocated here. |
215 // Allocated instance is returned in 'instance_reg'. | 215 // Allocated instance is returned in 'instance_reg'. |
216 // Only the tags field of the object is initialized. | 216 // Only the tags field of the object is initialized. |
217 void TryAllocate(const Class& cls, | 217 void TryAllocate(const Class& cls, |
218 Label* failure, | 218 Label* failure, |
219 Register instance_reg, | 219 Register instance_reg, |
220 Register temp_reg); | 220 Register temp_reg); |
(...skipping 1175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1396 Register value, | 1396 Register value, |
1397 Label* no_update); | 1397 Label* no_update); |
1398 | 1398 |
1399 DISALLOW_ALLOCATION(); | 1399 DISALLOW_ALLOCATION(); |
1400 DISALLOW_COPY_AND_ASSIGN(Assembler); | 1400 DISALLOW_COPY_AND_ASSIGN(Assembler); |
1401 }; | 1401 }; |
1402 | 1402 |
1403 } // namespace dart | 1403 } // namespace dart |
1404 | 1404 |
1405 #endif // VM_ASSEMBLER_MIPS_H_ | 1405 #endif // VM_ASSEMBLER_MIPS_H_ |
OLD | NEW |