Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(18)

Side by Side Diff: src/arm64/assembler-arm64.h

Issue 1474323002: Delete Assembler::FlushICacheWithoutIsolate (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: updates Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/arm/assembler-arm-inl.h ('k') | src/arm64/assembler-arm64-inl.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 781 matching lines...) Expand 10 before | Expand all | Expand 10 after
792 // Record relocation information for current pc_. 792 // Record relocation information for current pc_.
793 void RecordRelocInfo(RelocInfo::Mode rmode, intptr_t data = 0); 793 void RecordRelocInfo(RelocInfo::Mode rmode, intptr_t data = 0);
794 794
795 // Return the address in the constant pool of the code target address used by 795 // Return the address in the constant pool of the code target address used by
796 // the branch/call instruction at pc. 796 // the branch/call instruction at pc.
797 inline static Address target_pointer_address_at(Address pc); 797 inline static Address target_pointer_address_at(Address pc);
798 798
799 // Read/Modify the code target address in the branch/call instruction at pc. 799 // Read/Modify the code target address in the branch/call instruction at pc.
800 inline static Address target_address_at(Address pc, Address constant_pool); 800 inline static Address target_address_at(Address pc, Address constant_pool);
801 inline static void set_target_address_at( 801 inline static void set_target_address_at(
802 Address pc, Address constant_pool, Address target, 802 Isolate* isolate, Address pc, Address constant_pool, Address target,
803 ICacheFlushMode icache_flush_mode = FLUSH_ICACHE_IF_NEEDED); 803 ICacheFlushMode icache_flush_mode = FLUSH_ICACHE_IF_NEEDED);
804 static inline Address target_address_at(Address pc, Code* code); 804 static inline Address target_address_at(Address pc, Code* code);
805 static inline void set_target_address_at(Address pc, 805 static inline void set_target_address_at(
806 Code* code, 806 Isolate* isolate, Address pc, Code* code, Address target,
807 Address target, 807 ICacheFlushMode icache_flush_mode = FLUSH_ICACHE_IF_NEEDED);
808 ICacheFlushMode icache_flush_mode =
809 FLUSH_ICACHE_IF_NEEDED);
810 808
811 // Return the code target address at a call site from the return address of 809 // Return the code target address at a call site from the return address of
812 // that call in the instruction stream. 810 // that call in the instruction stream.
813 inline static Address target_address_from_return_address(Address pc); 811 inline static Address target_address_from_return_address(Address pc);
814 812
815 // Given the address of the beginning of a call, return the address in the 813 // Given the address of the beginning of a call, return the address in the
816 // instruction stream that call will return from. 814 // instruction stream that call will return from.
817 inline static Address return_address_from_call_start(Address pc); 815 inline static Address return_address_from_call_start(Address pc);
818 816
819 // This sets the branch destination (which is in the constant pool on ARM). 817 // This sets the branch destination (which is in the constant pool on ARM).
820 // This is for calls and branches within generated code. 818 // This is for calls and branches within generated code.
821 inline static void deserialization_set_special_target_at( 819 inline static void deserialization_set_special_target_at(
822 Address constant_pool_entry, Code* code, Address target); 820 Isolate* isolate, Address constant_pool_entry, Code* code,
821 Address target);
823 822
824 // This sets the internal reference at the pc. 823 // This sets the internal reference at the pc.
825 inline static void deserialization_set_target_internal_reference_at( 824 inline static void deserialization_set_target_internal_reference_at(
826 Address pc, Address target, 825 Isolate* isolate, Address pc, Address target,
827 RelocInfo::Mode mode = RelocInfo::INTERNAL_REFERENCE); 826 RelocInfo::Mode mode = RelocInfo::INTERNAL_REFERENCE);
828 827
829 // All addresses in the constant pool are the same size as pointers. 828 // All addresses in the constant pool are the same size as pointers.
830 static const int kSpecialTargetSize = kPointerSize; 829 static const int kSpecialTargetSize = kPointerSize;
831 830
832 // The sizes of the call sequences emitted by MacroAssembler::Call. 831 // The sizes of the call sequences emitted by MacroAssembler::Call.
833 // Wherever possible, use MacroAssembler::CallSize instead of these constants, 832 // Wherever possible, use MacroAssembler::CallSize instead of these constants,
834 // as it will choose the correct value for a given relocation mode. 833 // as it will choose the correct value for a given relocation mode.
835 // 834 //
836 // Without relocation: 835 // Without relocation:
(...skipping 1349 matching lines...) Expand 10 before | Expand all | Expand 10 after
2186 public: 2185 public:
2187 explicit EnsureSpace(Assembler* assembler) { 2186 explicit EnsureSpace(Assembler* assembler) {
2188 assembler->CheckBufferSpace(); 2187 assembler->CheckBufferSpace();
2189 } 2188 }
2190 }; 2189 };
2191 2190
2192 } // namespace internal 2191 } // namespace internal
2193 } // namespace v8 2192 } // namespace v8
2194 2193
2195 #endif // V8_ARM64_ASSEMBLER_ARM64_H_ 2194 #endif // V8_ARM64_ASSEMBLER_ARM64_H_
OLDNEW
« no previous file with comments | « src/arm/assembler-arm-inl.h ('k') | src/arm64/assembler-arm64-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698