Home | History | Annotate | Download | only in arm

Lines Matching refs:code

55 void Thumb2RelativePatcher::PatchCall(std::vector<uint8_t>* code,
59 DCHECK_LE(literal_offset + 4u, code->size());
78 DCHECK_EQ(GetInsn32(code, literal_offset) & 0xf800d000, 0xf000d000);
80 SetInsn32(code, literal_offset, value);
83 void Thumb2RelativePatcher::PatchPcRelativeReference(std::vector<uint8_t>* code,
92 uint32_t insn = GetInsn32(code, literal_offset);
100 SetInsn32(code, literal_offset, insn);
103 void Thumb2RelativePatcher::PatchBakerReadBarrierBranch(std::vector<uint8_t>* code,
109 DCHECK_LT(literal_offset, code->size());
110 uint32_t insn = GetInsn32(code, literal_offset);
121 DCHECK_GE(code->size() - literal_offset, 8u);
122 uint32_t next_insn = GetInsn32(code, literal_offset + 4u);
128 DCHECK_GE(code->size() - literal_offset, 6u);
129 uint32_t next_insn = GetInsn16(code, literal_offset + 4u);
138 DCHECK_GE(code->size() - literal_offset, 8u);
139 uint32_t next_insn = GetInsn32(code, literal_offset + 4u);
151 uint32_t prev_insn = GetInsn32(code, literal_offset - 4u);
157 uint32_t prev_insn = GetInsn16(code, literal_offset - 2u);
178 SetInsn32(code, literal_offset, insn);
380 MemoryRegion code(thunk_code.data(), thunk_code.size());
381 assembler.FinalizeInstructions(code);
443 void Thumb2RelativePatcher::SetInsn32(std::vector<uint8_t>* code, uint32_t offset, uint32_t value) {
444 DCHECK_LE(offset + 4u, code->size());
446 uint8_t* addr = &(*code)[offset];
453 uint32_t Thumb2RelativePatcher::GetInsn32(ArrayRef<const uint8_t> code, uint32_t offset) {
454 DCHECK_LE(offset + 4u, code.size());
456 const uint8_t* addr = &code[offset];
465 uint32_t Thumb2RelativePatcher::GetInsn32(Vector* code, uint32_t offset) {
467 return GetInsn32(ArrayRef<const uint8_t>(*code), offset);
470 uint32_t Thumb2RelativePatcher::GetInsn16(ArrayRef<const uint8_t> code, uint32_t offset) {
471 DCHECK_LE(offset + 2u, code.size());
473 const uint8_t* addr = &code[offset];
478 uint32_t Thumb2RelativePatcher::GetInsn16(Vector* code, uint32_t offset) {
480 return GetInsn16(ArrayRef<const uint8_t>(*code), offset);