| 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 833 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 844 // Assembler functions are invoked in between GetCode() calls. | 844 // Assembler functions are invoked in between GetCode() calls. |
| 845 // | 845 // |
| 846 // The descriptor (desc) can be NULL. In that case, the code is finalized as | 846 // The descriptor (desc) can be NULL. In that case, the code is finalized as |
| 847 // usual, but the descriptor is not populated. | 847 // usual, but the descriptor is not populated. |
| 848 void GetCode(CodeDesc* desc); | 848 void GetCode(CodeDesc* desc); |
| 849 | 849 |
| 850 // Insert the smallest number of nop instructions | 850 // Insert the smallest number of nop instructions |
| 851 // possible to align the pc offset to a multiple | 851 // possible to align the pc offset to a multiple |
| 852 // of m. m must be a power of 2 (>= 4). | 852 // of m. m must be a power of 2 (>= 4). |
| 853 void Align(int m); | 853 void Align(int m); |
| 854 // Insert the smallest number of zero bytes possible to align the pc offset |
| 855 // to a mulitple of m. m must be a power of 2 (>= 2). |
| 856 void DataAlign(int m); |
| 854 | 857 |
| 855 inline void Unreachable(); | 858 inline void Unreachable(); |
| 856 | 859 |
| 857 // Label -------------------------------------------------------------------- | 860 // Label -------------------------------------------------------------------- |
| 858 // Bind a label to the current pc. Note that labels can only be bound once, | 861 // Bind a label to the current pc. Note that labels can only be bound once, |
| 859 // and if labels are linked to other instructions, they _must_ be bound | 862 // and if labels are linked to other instructions, they _must_ be bound |
| 860 // before they go out of scope. | 863 // before they go out of scope. |
| 861 void bind(Label* label); | 864 void bind(Label* label); |
| 862 | 865 |
| 863 | 866 |
| (...skipping 1456 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2320 class EnsureSpace BASE_EMBEDDED { | 2323 class EnsureSpace BASE_EMBEDDED { |
| 2321 public: | 2324 public: |
| 2322 explicit EnsureSpace(Assembler* assembler) { | 2325 explicit EnsureSpace(Assembler* assembler) { |
| 2323 assembler->CheckBufferSpace(); | 2326 assembler->CheckBufferSpace(); |
| 2324 } | 2327 } |
| 2325 }; | 2328 }; |
| 2326 | 2329 |
| 2327 } } // namespace v8::internal | 2330 } } // namespace v8::internal |
| 2328 | 2331 |
| 2329 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ | 2332 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ |
| OLD | NEW |