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/bailout-reason.h" | 10 #include "src/bailout-reason.h" |
(...skipping 1454 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1465 // Check if the map of an object is equal to a specified weak map and branch | 1465 // Check if the map of an object is equal to a specified weak map and branch |
1466 // to a specified target if equal. Skip the smi check if not required | 1466 // to a specified target if equal. Skip the smi check if not required |
1467 // (object is known to be a heap object) | 1467 // (object is known to be a heap object) |
1468 void DispatchWeakMap(Register obj, Register scratch1, Register scratch2, | 1468 void DispatchWeakMap(Register obj, Register scratch1, Register scratch2, |
1469 Handle<WeakCell> cell, Handle<Code> success, | 1469 Handle<WeakCell> cell, Handle<Code> success, |
1470 SmiCheckType smi_check_type); | 1470 SmiCheckType smi_check_type); |
1471 | 1471 |
1472 // Compare the given value and the value of weak cell. | 1472 // Compare the given value and the value of weak cell. |
1473 void CmpWeakValue(Register value, Handle<WeakCell> cell, Register scratch); | 1473 void CmpWeakValue(Register value, Handle<WeakCell> cell, Register scratch); |
1474 | 1474 |
| 1475 void GetWeakValue(Register value, Handle<WeakCell> cell); |
| 1476 |
1475 // Load the value of the weak cell in the value register. Branch to the given | 1477 // Load the value of the weak cell in the value register. Branch to the given |
1476 // miss label if the weak cell was cleared. | 1478 // miss label if the weak cell was cleared. |
1477 void LoadWeakValue(Register value, Handle<WeakCell> cell, Label* miss); | 1479 void LoadWeakValue(Register value, Handle<WeakCell> cell, Label* miss); |
1478 | 1480 |
1479 // Test the bitfield of the heap object map with mask and set the condition | 1481 // Test the bitfield of the heap object map with mask and set the condition |
1480 // flags. The object register is preserved. | 1482 // flags. The object register is preserved. |
1481 void TestMapBitfield(Register object, uint64_t mask); | 1483 void TestMapBitfield(Register object, uint64_t mask); |
1482 | 1484 |
1483 // Load the elements kind field from a map, and return it in the result | 1485 // Load the elements kind field from a map, and return it in the result |
1484 // register. | 1486 // register. |
(...skipping 830 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2315 #error "Unsupported option" | 2317 #error "Unsupported option" |
2316 #define CODE_COVERAGE_STRINGIFY(x) #x | 2318 #define CODE_COVERAGE_STRINGIFY(x) #x |
2317 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) | 2319 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) |
2318 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) | 2320 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) |
2319 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> | 2321 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> |
2320 #else | 2322 #else |
2321 #define ACCESS_MASM(masm) masm-> | 2323 #define ACCESS_MASM(masm) masm-> |
2322 #endif | 2324 #endif |
2323 | 2325 |
2324 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ | 2326 #endif // V8_ARM64_MACRO_ASSEMBLER_ARM64_H_ |
OLD | NEW |