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_CODE_STUBS_ARM64_H_ | 5 #ifndef V8_ARM64_CODE_STUBS_ARM64_H_ |
6 #define V8_ARM64_CODE_STUBS_ARM64_H_ | 6 #define V8_ARM64_CODE_STUBS_ARM64_H_ |
7 | 7 |
8 namespace v8 { | 8 namespace v8 { |
9 namespace internal { | 9 namespace internal { |
10 | 10 |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
131 static void Patch(Code* stub, Mode mode) { | 131 static void Patch(Code* stub, Mode mode) { |
132 // We are going to patch the two first instructions of the stub. | 132 // We are going to patch the two first instructions of the stub. |
133 PatchingAssembler patcher( | 133 PatchingAssembler patcher( |
134 reinterpret_cast<Instruction*>(stub->instruction_start()), 2); | 134 reinterpret_cast<Instruction*>(stub->instruction_start()), 2); |
135 Instruction* instr1 = patcher.InstructionAt(0); | 135 Instruction* instr1 = patcher.InstructionAt(0); |
136 Instruction* instr2 = patcher.InstructionAt(kInstructionSize); | 136 Instruction* instr2 = patcher.InstructionAt(kInstructionSize); |
137 // Instructions must be either 'adr' or 'b'. | 137 // Instructions must be either 'adr' or 'b'. |
138 DCHECK(instr1->IsPCRelAddressing() || instr1->IsUncondBranchImm()); | 138 DCHECK(instr1->IsPCRelAddressing() || instr1->IsUncondBranchImm()); |
139 DCHECK(instr2->IsPCRelAddressing() || instr2->IsUncondBranchImm()); | 139 DCHECK(instr2->IsPCRelAddressing() || instr2->IsUncondBranchImm()); |
140 // Retrieve the offsets to the labels. | 140 // Retrieve the offsets to the labels. |
141 int32_t offset_to_incremental_noncompacting = instr1->ImmPCOffset(); | 141 auto offset_to_incremental_noncompacting = |
142 int32_t offset_to_incremental_compacting = instr2->ImmPCOffset(); | 142 static_cast<int32_t>(instr1->ImmPCOffset()); |
| 143 auto offset_to_incremental_compacting = |
| 144 static_cast<int32_t>(instr2->ImmPCOffset()); |
143 | 145 |
144 switch (mode) { | 146 switch (mode) { |
145 case STORE_BUFFER_ONLY: | 147 case STORE_BUFFER_ONLY: |
146 DCHECK(GetMode(stub) == INCREMENTAL || | 148 DCHECK(GetMode(stub) == INCREMENTAL || |
147 GetMode(stub) == INCREMENTAL_COMPACTION); | 149 GetMode(stub) == INCREMENTAL_COMPACTION); |
148 patcher.adr(xzr, offset_to_incremental_noncompacting); | 150 patcher.adr(xzr, offset_to_incremental_noncompacting); |
149 patcher.adr(xzr, offset_to_incremental_compacting); | 151 patcher.adr(xzr, offset_to_incremental_compacting); |
150 break; | 152 break; |
151 case INCREMENTAL: | 153 case INCREMENTAL: |
152 DCHECK(GetMode(stub) == STORE_BUFFER_ONLY); | 154 DCHECK(GetMode(stub) == STORE_BUFFER_ONLY); |
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
378 | 380 |
379 class LookupModeBits: public BitField<LookupMode, 0, 1> {}; | 381 class LookupModeBits: public BitField<LookupMode, 0, 1> {}; |
380 | 382 |
381 DEFINE_NULL_CALL_INTERFACE_DESCRIPTOR(); | 383 DEFINE_NULL_CALL_INTERFACE_DESCRIPTOR(); |
382 DEFINE_PLATFORM_CODE_STUB(NameDictionaryLookup, PlatformCodeStub); | 384 DEFINE_PLATFORM_CODE_STUB(NameDictionaryLookup, PlatformCodeStub); |
383 }; | 385 }; |
384 | 386 |
385 } } // namespace v8::internal | 387 } } // namespace v8::internal |
386 | 388 |
387 #endif // V8_ARM64_CODE_STUBS_ARM64_H_ | 389 #endif // V8_ARM64_CODE_STUBS_ARM64_H_ |
OLD | NEW |