| 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_MACRO_ASSEMBLER_ARM64_H_ | 5 #ifndef V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
| 6 #define V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 6 #define V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
| 7 | 7 |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "src/arm64/assembler-arm64.h" | 10 #include "src/arm64/assembler-arm64.h" |
| (...skipping 1081 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1092 } | 1092 } |
| 1093 | 1093 |
| 1094 // ---- Object Utilities ---- | 1094 // ---- Object Utilities ---- |
| 1095 | 1095 |
| 1096 // Initialize fields with filler values. Fields starting at |current_address| | 1096 // Initialize fields with filler values. Fields starting at |current_address| |
| 1097 // not including |end_address| are overwritten with the value in |filler|. At | 1097 // not including |end_address| are overwritten with the value in |filler|. At |
| 1098 // the end the loop, |current_address| takes the value of |end_address|. | 1098 // the end the loop, |current_address| takes the value of |end_address|. |
| 1099 void InitializeFieldsWithFiller(Register current_address, | 1099 void InitializeFieldsWithFiller(Register current_address, |
| 1100 Register end_address, Register filler); | 1100 Register end_address, Register filler); |
| 1101 | 1101 |
| 1102 // Copies a number of bytes from src to dst. All passed registers are | |
| 1103 // clobbered. On exit src and dst will point to the place just after where the | |
| 1104 // last byte was read or written and length will be zero. Hint may be used to | |
| 1105 // determine which is the most efficient algorithm to use for copying. | |
| 1106 void CopyBytes(Register dst, | |
| 1107 Register src, | |
| 1108 Register length, | |
| 1109 Register scratch, | |
| 1110 CopyHint hint = kCopyUnknown); | |
| 1111 | |
| 1112 // ---- String Utilities ---- | 1102 // ---- String Utilities ---- |
| 1113 | 1103 |
| 1114 | 1104 |
| 1115 // Jump to label if either object is not a sequential one-byte string. | 1105 // Jump to label if either object is not a sequential one-byte string. |
| 1116 // Optionally perform a smi check on the objects first. | 1106 // Optionally perform a smi check on the objects first. |
| 1117 void JumpIfEitherIsNotSequentialOneByteStrings( | 1107 void JumpIfEitherIsNotSequentialOneByteStrings( |
| 1118 Register first, Register second, Register scratch1, Register scratch2, | 1108 Register first, Register second, Register scratch1, Register scratch2, |
| 1119 Label* failure, SmiCheckType smi_check = DO_SMI_CHECK); | 1109 Label* failure, SmiCheckType smi_check = DO_SMI_CHECK); |
| 1120 | 1110 |
| 1121 // Check if instance type is sequential one-byte string and jump to label if | 1111 // Check if instance type is sequential one-byte string and jump to label if |
| (...skipping 1167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2289 class RegisterBits : public BitField<unsigned, 0, 5> {}; | 2279 class RegisterBits : public BitField<unsigned, 0, 5> {}; |
| 2290 class DeltaBits : public BitField<uint32_t, 5, 32-5> {}; | 2280 class DeltaBits : public BitField<uint32_t, 5, 32-5> {}; |
| 2291 }; | 2281 }; |
| 2292 | 2282 |
| 2293 } // namespace internal | 2283 } // namespace internal |
| 2294 } // namespace v8 | 2284 } // namespace v8 |
| 2295 | 2285 |
| 2296 #define ACCESS_MASM(masm) masm-> | 2286 #define ACCESS_MASM(masm) masm-> |
| 2297 | 2287 |
| 2298 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 2288 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
| OLD | NEW |