| OLD | NEW |
| 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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_ARM64_H_ | 5 #ifndef VM_ASSEMBLER_ARM64_H_ |
| 6 #define VM_ASSEMBLER_ARM64_H_ | 6 #define VM_ASSEMBLER_ARM64_H_ |
| 7 | 7 |
| 8 #ifndef VM_ASSEMBLER_H_ | 8 #ifndef VM_ASSEMBLER_H_ |
| 9 #error Do not include assembler_arm64.h directly; use assembler.h instead. | 9 #error Do not include assembler_arm64.h directly; use assembler.h instead. |
| 10 #endif | 10 #endif |
| (...skipping 1360 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1371 void EnterCallRuntimeFrame(intptr_t frame_size); | 1371 void EnterCallRuntimeFrame(intptr_t frame_size); |
| 1372 void LeaveCallRuntimeFrame(); | 1372 void LeaveCallRuntimeFrame(); |
| 1373 void CallRuntime(const RuntimeEntry& entry, intptr_t argument_count); | 1373 void CallRuntime(const RuntimeEntry& entry, intptr_t argument_count); |
| 1374 | 1374 |
| 1375 // Set up a stub frame so that the stack traversal code can easily identify | 1375 // Set up a stub frame so that the stack traversal code can easily identify |
| 1376 // a stub frame. | 1376 // a stub frame. |
| 1377 void EnterStubFrame(); | 1377 void EnterStubFrame(); |
| 1378 void LeaveStubFrame(); | 1378 void LeaveStubFrame(); |
| 1379 | 1379 |
| 1380 void UpdateAllocationStats(intptr_t cid, | 1380 void UpdateAllocationStats(intptr_t cid, |
| 1381 Heap::Space space, | 1381 Heap::Space space); |
| 1382 bool inline_isolate = true); | |
| 1383 | 1382 |
| 1384 void UpdateAllocationStatsWithSize(intptr_t cid, | 1383 void UpdateAllocationStatsWithSize(intptr_t cid, |
| 1385 Register size_reg, | 1384 Register size_reg, |
| 1386 Heap::Space space, | 1385 Heap::Space space); |
| 1387 bool inline_isolate = true); | |
| 1388 | 1386 |
| 1389 // If allocation tracing for |cid| is enabled, will jump to |trace| label, | 1387 // If allocation tracing for |cid| is enabled, will jump to |trace| label, |
| 1390 // which will allocate in the runtime where tracing occurs. | 1388 // which will allocate in the runtime where tracing occurs. |
| 1391 void MaybeTraceAllocation(intptr_t cid, | 1389 void MaybeTraceAllocation(intptr_t cid, |
| 1392 Register temp_reg, | 1390 Register temp_reg, |
| 1393 Label* trace, | 1391 Label* trace); |
| 1394 bool inline_isolate = true); | |
| 1395 | 1392 |
| 1396 // Inlined allocation of an instance of class 'cls', code has no runtime | 1393 // Inlined allocation of an instance of class 'cls', code has no runtime |
| 1397 // calls. Jump to 'failure' if the instance cannot be allocated here. | 1394 // calls. Jump to 'failure' if the instance cannot be allocated here. |
| 1398 // Allocated instance is returned in 'instance_reg'. | 1395 // Allocated instance is returned in 'instance_reg'. |
| 1399 // Only the tags field of the object is initialized. | 1396 // Only the tags field of the object is initialized. |
| 1400 void TryAllocate(const Class& cls, | 1397 void TryAllocate(const Class& cls, |
| 1401 Label* failure, | 1398 Label* failure, |
| 1402 Register instance_reg, | 1399 Register instance_reg, |
| 1403 Register temp_reg); | 1400 Register temp_reg); |
| 1404 | 1401 |
| (...skipping 562 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1967 Register value, | 1964 Register value, |
| 1968 Label* no_update); | 1965 Label* no_update); |
| 1969 | 1966 |
| 1970 DISALLOW_ALLOCATION(); | 1967 DISALLOW_ALLOCATION(); |
| 1971 DISALLOW_COPY_AND_ASSIGN(Assembler); | 1968 DISALLOW_COPY_AND_ASSIGN(Assembler); |
| 1972 }; | 1969 }; |
| 1973 | 1970 |
| 1974 } // namespace dart | 1971 } // namespace dart |
| 1975 | 1972 |
| 1976 #endif // VM_ASSEMBLER_ARM64_H_ | 1973 #endif // VM_ASSEMBLER_ARM64_H_ |
| OLD | NEW |