| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 104 bool IsValidFPRegister() const; | 104 bool IsValidFPRegister() const; |
| 105 bool IsNone() const; | 105 bool IsNone() const; |
| 106 bool Is(const CPURegister& other) const; | 106 bool Is(const CPURegister& other) const; |
| 107 | 107 |
| 108 bool IsZero() const; | 108 bool IsZero() const; |
| 109 bool IsSP() const; | 109 bool IsSP() const; |
| 110 | 110 |
| 111 bool IsRegister() const; | 111 bool IsRegister() const; |
| 112 bool IsFPRegister() const; | 112 bool IsFPRegister() const; |
| 113 | 113 |
| 114 const Register& X(); | 114 const Register& X() const; |
| 115 const Register& W(); | 115 const Register& W() const; |
| 116 const FPRegister& D(); | 116 const FPRegister& D() const; |
| 117 const FPRegister& S(); | 117 const FPRegister& S() const; |
| 118 | 118 |
| 119 bool IsSameSizeAndType(const CPURegister& other) const; | 119 bool IsSameSizeAndType(const CPURegister& other) const; |
| 120 | 120 |
| 121 // V8 compatibility. | 121 // V8 compatibility. |
| 122 bool is(const CPURegister& other) const { return Is(other); } | 122 bool is(const CPURegister& other) const { return Is(other); } |
| 123 bool is_valid() const { return IsValid(); } | 123 bool is_valid() const { return IsValid(); } |
| 124 | 124 |
| 125 protected: | 125 protected: |
| 126 unsigned code_; | 126 unsigned code_; |
| 127 unsigned size_; | 127 unsigned size_; |
| (...skipping 578 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 706 | 706 |
| 707 // RelocInfo and constant pool ---------------------------------------------- | 707 // RelocInfo and constant pool ---------------------------------------------- |
| 708 | 708 |
| 709 // Record relocation information for current pc_. | 709 // Record relocation information for current pc_. |
| 710 void RecordRelocInfo(RelocInfo::Mode rmode, intptr_t data = 0); | 710 void RecordRelocInfo(RelocInfo::Mode rmode, intptr_t data = 0); |
| 711 | 711 |
| 712 // Return the address in the constant pool of the code target address used by | 712 // Return the address in the constant pool of the code target address used by |
| 713 // the branch/call instruction at pc. | 713 // the branch/call instruction at pc. |
| 714 inline static Address target_pointer_address_at(Address pc); | 714 inline static Address target_pointer_address_at(Address pc); |
| 715 | 715 |
| 716 // Read/modify the pointer in the branch/call instruction at pc. | |
| 717 inline static Address target_pointer_at(Address pc); | |
| 718 inline static void set_target_pointer_at(Address pc, Address target); | |
| 719 | |
| 720 // Read/Modify the code target address in the branch/call instruction at pc. | 716 // Read/Modify the code target address in the branch/call instruction at pc. |
| 721 inline static Address target_address_at(Address pc); | 717 inline static Address target_address_at(Address pc); |
| 722 inline static void set_target_address_at(Address pc, Address target); | 718 inline static void set_target_address_at(Address pc, Address target); |
| 723 | 719 |
| 724 // Return the code target address at a call site from the return address of | 720 // Return the code target address at a call site from the return address of |
| 725 // that call in the instruction stream. | 721 // that call in the instruction stream. |
| 726 inline static Address target_address_from_return_address(Address pc); | 722 inline static Address target_address_from_return_address(Address pc); |
| 727 | 723 |
| 728 // Given the address of the beginning of a call, return the address in the | 724 // Given the address of the beginning of a call, return the address in the |
| 729 // instruction stream that call will return from. | 725 // instruction stream that call will return from. |
| (...skipping 1308 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2038 class EnsureSpace BASE_EMBEDDED { | 2034 class EnsureSpace BASE_EMBEDDED { |
| 2039 public: | 2035 public: |
| 2040 explicit EnsureSpace(Assembler* assembler) { | 2036 explicit EnsureSpace(Assembler* assembler) { |
| 2041 assembler->CheckBuffer(); | 2037 assembler->CheckBuffer(); |
| 2042 } | 2038 } |
| 2043 }; | 2039 }; |
| 2044 | 2040 |
| 2045 } } // namespace v8::internal | 2041 } } // namespace v8::internal |
| 2046 | 2042 |
| 2047 #endif // V8_A64_ASSEMBLER_A64_H_ | 2043 #endif // V8_A64_ASSEMBLER_A64_H_ |
| OLD | NEW |