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 <deque> | 8 #include <deque> |
9 #include <list> | 9 #include <list> |
10 #include <map> | 10 #include <map> |
(...skipping 1341 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1352 | 1352 |
1353 // Load word pair with sign extension. | 1353 // Load word pair with sign extension. |
1354 void ldpsw(const Register& rt, const Register& rt2, const MemOperand& src); | 1354 void ldpsw(const Register& rt, const Register& rt2, const MemOperand& src); |
1355 | 1355 |
1356 // Load literal to register from a pc relative address. | 1356 // Load literal to register from a pc relative address. |
1357 void ldr_pcrel(const CPURegister& rt, int imm19); | 1357 void ldr_pcrel(const CPURegister& rt, int imm19); |
1358 | 1358 |
1359 // Load literal to register. | 1359 // Load literal to register. |
1360 void ldr(const CPURegister& rt, const Immediate& imm); | 1360 void ldr(const CPURegister& rt, const Immediate& imm); |
1361 | 1361 |
| 1362 // Load exclusive byte. |
| 1363 void ldxrb(const Register& rt, const Register& rn); |
| 1364 |
| 1365 // Store exclusive byte. |
| 1366 void stxrb(const Register& rs, const Register& rt, const Register& rn); |
| 1367 |
| 1368 // Load exclusive half-word. |
| 1369 void ldxrh(const Register& rt, const Register& rn); |
| 1370 |
| 1371 // Store exclusive half-word. |
| 1372 void stxrh(const Register& rs, const Register& rt, const Register& rn); |
| 1373 |
| 1374 // Load exclusive word. |
| 1375 void ldxr(const Register& rt, const Register& rn); |
| 1376 |
| 1377 // Store exclusive word. |
| 1378 void stxr(const Register& rs, const Register& rt, const Register& rn); |
| 1379 |
1362 // Load-acquire word. | 1380 // Load-acquire word. |
1363 void ldar(const Register& rt, const Register& rn); | 1381 void ldar(const Register& rt, const Register& rn); |
1364 | 1382 |
1365 // Load-acquire exclusive word. | 1383 // Load-acquire exclusive word. |
1366 void ldaxr(const Register& rt, const Register& rn); | 1384 void ldaxr(const Register& rt, const Register& rn); |
1367 | 1385 |
1368 // Store-release word. | 1386 // Store-release word. |
1369 void stlr(const Register& rt, const Register& rn); | 1387 void stlr(const Register& rt, const Register& rn); |
1370 | 1388 |
1371 // Store-release exclusive word. | 1389 // Store-release exclusive word. |
(...skipping 820 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2192 public: | 2210 public: |
2193 explicit EnsureSpace(Assembler* assembler) { | 2211 explicit EnsureSpace(Assembler* assembler) { |
2194 assembler->CheckBufferSpace(); | 2212 assembler->CheckBufferSpace(); |
2195 } | 2213 } |
2196 }; | 2214 }; |
2197 | 2215 |
2198 } // namespace internal | 2216 } // namespace internal |
2199 } // namespace v8 | 2217 } // namespace v8 |
2200 | 2218 |
2201 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ | 2219 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ |
OLD | NEW |