Lines Matching refs:Assembler
40 #include "src/arm/assembler-arm.h"
42 #include "src/assembler.h"
107 return Assembler::target_address_at(pc_, host_);
116 Assembler::IsMovW(Memory::int32_at(pc_))) {
121 DCHECK(Assembler::IsLdrPcImmediateOffset(Memory::int32_at(pc_)));
129 return Assembler::constant_pool_entry_address(pc_, host_->constant_pool());
142 Assembler::set_target_address_at(pc_, host_, target, icache_flush_mode);
154 return reinterpret_cast<Object*>(Assembler::target_address_at(pc_, host_));
158 Handle<Object> RelocInfo::target_object_handle(Assembler* origin) {
161 Assembler::target_address_at(pc_, host_)));
169 Assembler::set_target_address_at(pc_, host_,
183 return Assembler::target_address_at(pc_, host_);
187 Address RelocInfo::target_runtime_entry(Assembler* origin) {
230 static const int kNoCodeAgeSequenceLength = 3 * Assembler::kInstrSize;
233 Handle<Object> RelocInfo::code_age_stub_handle(Assembler* origin) {
243 (kNoCodeAgeSequenceLength - Assembler::kInstrSize)));
251 (kNoCodeAgeSequenceLength - Assembler::kInstrSize)) =
261 return Memory::Address_at(pc_ + 2 * Assembler::kInstrSize);
268 Memory::Address_at(pc_ + 2 * Assembler::kInstrSize) = target;
290 return reinterpret_cast<Object**>(pc_ + 2 * Assembler::kInstrSize);
299 Assembler::set_target_address_at(pc_, host_, NULL);
304 Instr current_instr = Assembler::instr_at(pc_);
305 Instr next_instr = Assembler::instr_at(pc_ + Assembler::kInstrSize);
309 return Assembler::IsLdrPcImmediateOffset(current_instr) &&
310 Assembler::IsBlxReg(next_instr);
315 Instr current_instr = Assembler::instr_at(pc_);
316 return !Assembler::IsNop(current_instr, Assembler::DEBUG_BREAK_NOP);
406 void Assembler::CheckBuffer() {
416 void Assembler::emit(Instr x) {
423 Address Assembler::target_address_from_return_address(Address pc) {
457 Address candidate = pc - 2 * Assembler::kInstrSize;
464 candidate -= Assembler::kInstrSize;
467 candidate -= 1 * Assembler::kInstrSize;
469 IsMovT(Memory::int32_at(candidate + Assembler::kInstrSize)));
471 candidate -= 3 * Assembler::kInstrSize;
474 IsOrrImmed(Memory::int32_at(candidate + Assembler::kInstrSize)) &&
475 IsOrrImmed(Memory::int32_at(candidate + 2 * Assembler::kInstrSize)) &&
476 IsOrrImmed(Memory::int32_at(candidate + 3 * Assembler::kInstrSize)));
483 Address Assembler::break_address_from_return_address(Address pc) {
484 return pc - Assembler::kPatchDebugBreakSlotReturnOffset;
488 Address Assembler::return_address_from_call_start(Address pc) {
521 void Assembler::deserialization_set_special_target_at(
531 bool Assembler::is_constant_pool_load(Address pc) {
533 return !Assembler::IsMovW(Memory::int32_at(pc)) ||
535 Assembler::IsLdrPpRegOffset(
536 Memory::int32_at(pc + 2 * Assembler::kInstrSize)));
538 return !Assembler::IsMovImmed(Memory::int32_at(pc)) ||
540 Assembler::IsLdrPpRegOffset(
541 Memory::int32_at(pc + 4 * Assembler::kInstrSize)));
546 Address Assembler::constant_pool_entry_address(
573 DCHECK(Assembler::IsLdrPpImmediateOffset(Memory::int32_at(pc)));
578 DCHECK(Assembler::IsLdrPcImmediateOffset(Memory::int32_at(pc)));
585 Address Assembler::target_address_at(Address pc,
617 void Assembler::set_target_address_at(Address pc,