| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_ARM64_ASSEMBLER_ARM64_H_ | 5 #ifndef V8_ARM64_ASSEMBLER_ARM64_H_ |
| 6 #define V8_ARM64_ASSEMBLER_ARM64_H_ | 6 #define V8_ARM64_ASSEMBLER_ARM64_H_ |
| 7 | 7 |
| 8 #include <list> | 8 #include <list> |
| 9 #include <map> | 9 #include <map> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 883 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 894 inline static Address return_address_from_call_start(Address pc); | 894 inline static Address return_address_from_call_start(Address pc); |
| 895 | 895 |
| 896 // Return the code target address of the patch debug break slot | 896 // Return the code target address of the patch debug break slot |
| 897 inline static Address break_address_from_return_address(Address pc); | 897 inline static Address break_address_from_return_address(Address pc); |
| 898 | 898 |
| 899 // This sets the branch destination (which is in the constant pool on ARM). | 899 // This sets the branch destination (which is in the constant pool on ARM). |
| 900 // This is for calls and branches within generated code. | 900 // This is for calls and branches within generated code. |
| 901 inline static void deserialization_set_special_target_at( | 901 inline static void deserialization_set_special_target_at( |
| 902 Address constant_pool_entry, Code* code, Address target); | 902 Address constant_pool_entry, Code* code, Address target); |
| 903 | 903 |
| 904 // This sets the internal reference at the pc. |
| 905 inline static void deserialization_set_target_internal_reference_at( |
| 906 Address pc, Address target); |
| 907 |
| 904 // All addresses in the constant pool are the same size as pointers. | 908 // All addresses in the constant pool are the same size as pointers. |
| 905 static const int kSpecialTargetSize = kPointerSize; | 909 static const int kSpecialTargetSize = kPointerSize; |
| 906 | 910 |
| 907 // The sizes of the call sequences emitted by MacroAssembler::Call. | 911 // The sizes of the call sequences emitted by MacroAssembler::Call. |
| 908 // Wherever possible, use MacroAssembler::CallSize instead of these constants, | 912 // Wherever possible, use MacroAssembler::CallSize instead of these constants, |
| 909 // as it will choose the correct value for a given relocation mode. | 913 // as it will choose the correct value for a given relocation mode. |
| 910 // | 914 // |
| 911 // Without relocation: | 915 // Without relocation: |
| 912 // movz temp, #(target & 0x000000000000ffff) | 916 // movz temp, #(target & 0x000000000000ffff) |
| 913 // movk temp, #(target & 0x00000000ffff0000) | 917 // movk temp, #(target & 0x00000000ffff0000) |
| (...skipping 1393 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2307 class EnsureSpace BASE_EMBEDDED { | 2311 class EnsureSpace BASE_EMBEDDED { |
| 2308 public: | 2312 public: |
| 2309 explicit EnsureSpace(Assembler* assembler) { | 2313 explicit EnsureSpace(Assembler* assembler) { |
| 2310 assembler->CheckBufferSpace(); | 2314 assembler->CheckBufferSpace(); |
| 2311 } | 2315 } |
| 2312 }; | 2316 }; |
| 2313 | 2317 |
| 2314 } } // namespace v8::internal | 2318 } } // namespace v8::internal |
| 2315 | 2319 |
| 2316 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ | 2320 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ |
| OLD | NEW |