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 470 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
481 | 481 |
482 RawObjectPool* MakeObjectPool() { | 482 RawObjectPool* MakeObjectPool() { |
483 return object_pool_wrapper_.MakeObjectPool(); | 483 return object_pool_wrapper_.MakeObjectPool(); |
484 } | 484 } |
485 | 485 |
486 bool use_far_branches() const { | 486 bool use_far_branches() const { |
487 return FLAG_use_far_branches || use_far_branches_; | 487 return FLAG_use_far_branches || use_far_branches_; |
488 } | 488 } |
489 | 489 |
490 void set_use_far_branches(bool b) { | 490 void set_use_far_branches(bool b) { |
491 ASSERT(buffer_.Size() == 0); | |
492 use_far_branches_ = b; | 491 use_far_branches_ = b; |
493 } | 492 } |
494 | 493 |
495 void FinalizeInstructions(const MemoryRegion& region) { | 494 void FinalizeInstructions(const MemoryRegion& region) { |
496 buffer_.FinalizeInstructions(region); | 495 buffer_.FinalizeInstructions(region); |
497 } | 496 } |
498 | 497 |
499 // Debugging and bringup support. | 498 // Debugging and bringup support. |
500 void Stop(const char* message); | 499 void Stop(const char* message); |
501 void Unimplemented(const char* message); | 500 void Unimplemented(const char* message); |
(...skipping 855 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1357 | 1356 |
1358 void EnterCallRuntimeFrame(intptr_t frame_size); | 1357 void EnterCallRuntimeFrame(intptr_t frame_size); |
1359 void LeaveCallRuntimeFrame(); | 1358 void LeaveCallRuntimeFrame(); |
1360 void CallRuntime(const RuntimeEntry& entry, intptr_t argument_count); | 1359 void CallRuntime(const RuntimeEntry& entry, intptr_t argument_count); |
1361 | 1360 |
1362 // Set up a stub frame so that the stack traversal code can easily identify | 1361 // Set up a stub frame so that the stack traversal code can easily identify |
1363 // a stub frame. | 1362 // a stub frame. |
1364 void EnterStubFrame(); | 1363 void EnterStubFrame(); |
1365 void LeaveStubFrame(); | 1364 void LeaveStubFrame(); |
1366 | 1365 |
| 1366 void NoMonomorphicCheckedEntry(); |
| 1367 void MonomorphicCheckedEntry(); |
| 1368 |
1367 void UpdateAllocationStats(intptr_t cid, | 1369 void UpdateAllocationStats(intptr_t cid, |
1368 Heap::Space space); | 1370 Heap::Space space); |
1369 | 1371 |
1370 void UpdateAllocationStatsWithSize(intptr_t cid, | 1372 void UpdateAllocationStatsWithSize(intptr_t cid, |
1371 Register size_reg, | 1373 Register size_reg, |
1372 Heap::Space space); | 1374 Heap::Space space); |
1373 | 1375 |
1374 // If allocation tracing for |cid| is enabled, will jump to |trace| label, | 1376 // If allocation tracing for |cid| is enabled, will jump to |trace| label, |
1375 // which will allocate in the runtime where tracing occurs. | 1377 // which will allocate in the runtime where tracing occurs. |
1376 void MaybeTraceAllocation(intptr_t cid, | 1378 void MaybeTraceAllocation(intptr_t cid, |
(...skipping 574 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1951 Register value, | 1953 Register value, |
1952 Label* no_update); | 1954 Label* no_update); |
1953 | 1955 |
1954 DISALLOW_ALLOCATION(); | 1956 DISALLOW_ALLOCATION(); |
1955 DISALLOW_COPY_AND_ASSIGN(Assembler); | 1957 DISALLOW_COPY_AND_ASSIGN(Assembler); |
1956 }; | 1958 }; |
1957 | 1959 |
1958 } // namespace dart | 1960 } // namespace dart |
1959 | 1961 |
1960 #endif // VM_ASSEMBLER_ARM64_H_ | 1962 #endif // VM_ASSEMBLER_ARM64_H_ |
OLD | NEW |