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 1927 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1938 | 1938 |
1939 protected: | 1939 protected: |
1940 inline const Register& AppropriateZeroRegFor(const CPURegister& reg) const; | 1940 inline const Register& AppropriateZeroRegFor(const CPURegister& reg) const; |
1941 | 1941 |
1942 void LoadStore(const CPURegister& rt, | 1942 void LoadStore(const CPURegister& rt, |
1943 const MemOperand& addr, | 1943 const MemOperand& addr, |
1944 LoadStoreOp op); | 1944 LoadStoreOp op); |
1945 static bool IsImmLSUnscaled(ptrdiff_t offset); | 1945 static bool IsImmLSUnscaled(ptrdiff_t offset); |
1946 static bool IsImmLSScaled(ptrdiff_t offset, LSDataSize size); | 1946 static bool IsImmLSScaled(ptrdiff_t offset, LSDataSize size); |
1947 | 1947 |
| 1948 void LoadStorePair(const CPURegister& rt, const CPURegister& rt2, |
| 1949 const MemOperand& addr, LoadStorePairOp op); |
| 1950 static bool IsImmLSPair(ptrdiff_t offset, LSDataSize size); |
| 1951 |
1948 void Logical(const Register& rd, | 1952 void Logical(const Register& rd, |
1949 const Register& rn, | 1953 const Register& rn, |
1950 const Operand& operand, | 1954 const Operand& operand, |
1951 LogicalOp op); | 1955 LogicalOp op); |
1952 void LogicalImmediate(const Register& rd, | 1956 void LogicalImmediate(const Register& rd, |
1953 const Register& rn, | 1957 const Register& rn, |
1954 unsigned n, | 1958 unsigned n, |
1955 unsigned imm_s, | 1959 unsigned imm_s, |
1956 unsigned imm_r, | 1960 unsigned imm_r, |
1957 LogicalOp op); | 1961 LogicalOp op); |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2020 void DataProcShiftedRegister(const Register& rd, | 2024 void DataProcShiftedRegister(const Register& rd, |
2021 const Register& rn, | 2025 const Register& rn, |
2022 const Operand& operand, | 2026 const Operand& operand, |
2023 FlagsUpdate S, | 2027 FlagsUpdate S, |
2024 Instr op); | 2028 Instr op); |
2025 void DataProcExtendedRegister(const Register& rd, | 2029 void DataProcExtendedRegister(const Register& rd, |
2026 const Register& rn, | 2030 const Register& rn, |
2027 const Operand& operand, | 2031 const Operand& operand, |
2028 FlagsUpdate S, | 2032 FlagsUpdate S, |
2029 Instr op); | 2033 Instr op); |
2030 void LoadStorePair(const CPURegister& rt, | |
2031 const CPURegister& rt2, | |
2032 const MemOperand& addr, | |
2033 LoadStorePairOp op); | |
2034 void LoadStorePairNonTemporal(const CPURegister& rt, | 2034 void LoadStorePairNonTemporal(const CPURegister& rt, |
2035 const CPURegister& rt2, | 2035 const CPURegister& rt2, |
2036 const MemOperand& addr, | 2036 const MemOperand& addr, |
2037 LoadStorePairNonTemporalOp op); | 2037 LoadStorePairNonTemporalOp op); |
2038 void ConditionalSelect(const Register& rd, | 2038 void ConditionalSelect(const Register& rd, |
2039 const Register& rn, | 2039 const Register& rn, |
2040 const Register& rm, | 2040 const Register& rm, |
2041 Condition cond, | 2041 Condition cond, |
2042 ConditionalSelectOp op); | 2042 ConditionalSelectOp op); |
2043 void DataProcessing1Source(const Register& rd, | 2043 void DataProcessing1Source(const Register& rd, |
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2299 class EnsureSpace BASE_EMBEDDED { | 2299 class EnsureSpace BASE_EMBEDDED { |
2300 public: | 2300 public: |
2301 explicit EnsureSpace(Assembler* assembler) { | 2301 explicit EnsureSpace(Assembler* assembler) { |
2302 assembler->CheckBufferSpace(); | 2302 assembler->CheckBufferSpace(); |
2303 } | 2303 } |
2304 }; | 2304 }; |
2305 | 2305 |
2306 } } // namespace v8::internal | 2306 } } // namespace v8::internal |
2307 | 2307 |
2308 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ | 2308 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ |
OLD | NEW |