Lines Matching refs:memory

89   std::shared_ptr<Memory> memory(new MemoryFake);  in PopulateElfFake()  local
90 ElfFake* elf = new ElfFake(memory); in PopulateElfFake()
179 void WriteDescriptor32(MemoryFake* memory, uint64_t addr, uint32_t entry) { in WriteDescriptor32() argument
182 memory->SetData32(addr, 1); in WriteDescriptor32()
184 memory->SetData32(addr + 4, 0); in WriteDescriptor32()
186 memory->SetData32(addr + 8, 0); in WriteDescriptor32()
188 memory->SetData32(addr + 12, entry); in WriteDescriptor32()
191 void WriteDescriptor64(MemoryFake* memory, uint64_t addr, uint64_t entry) { in WriteDescriptor64() argument
194 memory->SetData32(addr, 1); in WriteDescriptor64()
196 memory->SetData32(addr + 4, 0); in WriteDescriptor64()
198 memory->SetData64(addr + 8, 0); in WriteDescriptor64()
200 memory->SetData64(addr + 16, entry); in WriteDescriptor64()
203 void WriteEntry32Pack(MemoryFake* memory, uint64_t addr, uint32_t prev, uint32_t next, in WriteEntry32Pack() argument
207 memory->SetData32(addr, next); in WriteEntry32Pack()
209 memory->SetData32(addr + 4, prev); in WriteEntry32Pack()
211 memory->SetData32(addr + 8, elf_addr); in WriteEntry32Pack()
213 memory->SetData64(addr + 12, elf_size); in WriteEntry32Pack()
216 void WriteEntry32Pad(MemoryFake* memory, uint64_t addr, uint32_t prev, uint32_t next, in WriteEntry32Pad() argument
220 memory->SetData32(addr, next); in WriteEntry32Pad()
222 memory->SetData32(addr + 4, prev); in WriteEntry32Pad()
224 memory->SetData32(addr + 8, elf_addr); in WriteEntry32Pad()
226 memory->SetData32(addr + 12, 0); in WriteEntry32Pad()
228 memory->SetData64(addr + 16, elf_size); in WriteEntry32Pad()
231 void WriteEntry64(MemoryFake* memory, uint64_t addr, uint64_t prev, uint64_t next, in WriteEntry64() argument
235 memory->SetData64(addr, next); in WriteEntry64()
237 memory->SetData64(addr + 8, prev); in WriteEntry64()
239 memory->SetData64(addr + 16, elf_addr); in WriteEntry64()
241 memory->SetData64(addr + 24, elf_size); in WriteEntry64()
245 void PutElfInMemory(MemoryFake* memory, uint64_t offset, uint8_t class_type, uint8_t machine_type, in PutElfInMemory() argument
257 memory->SetMemory(offset, &ehdr, sizeof(ehdr)); in PutElfInMemory()
262 memory->SetMemory(offset + sh_offset, &shdr, sizeof(shdr)); in PutElfInMemory()
270 memory->SetMemory(offset + sh_offset, &shdr, sizeof(shdr)); in PutElfInMemory()
271 memory->SetMemory(offset + 0x500, ".debug_frame"); in PutElfInMemory()
280 memory->SetMemory(offset + sh_offset, &shdr, sizeof(shdr)); in PutElfInMemory()
286 memory->SetData32(dwarf_offset, 0xfc); in PutElfInMemory()
287 memory->SetData32(dwarf_offset + 0x4, 0xffffffff); in PutElfInMemory()
288 memory->SetData8(dwarf_offset + 0x8, 1); in PutElfInMemory()
289 memory->SetData8(dwarf_offset + 0x9, '\0'); in PutElfInMemory()
290 memory->SetData8(dwarf_offset + 0xa, 0x4); in PutElfInMemory()
291 memory->SetData8(dwarf_offset + 0xb, 0x4); in PutElfInMemory()
292 memory->SetData8(dwarf_offset + 0xc, 0x1); in PutElfInMemory()
295 memory->SetData32(dwarf_offset + 0x100, 0xfc); in PutElfInMemory()
296 memory->SetData32(dwarf_offset + 0x104, 0); in PutElfInMemory()
297 memory->SetData32(dwarf_offset + 0x108, pc); in PutElfInMemory()
298 memory->SetData32(dwarf_offset + 0x10c, size); in PutElfInMemory()
301 memory->SetData32(dwarf_offset, 0xffffffff); in PutElfInMemory()
302 memory->SetData64(dwarf_offset + 4, 0xf4); in PutElfInMemory()
303 memory->SetData64(dwarf_offset + 0xc, 0xffffffffffffffffULL); in PutElfInMemory()
304 memory->SetData8(dwarf_offset + 0x14, 1); in PutElfInMemory()
305 memory->SetData8(dwarf_offset + 0x15, '\0'); in PutElfInMemory()
306 memory->SetData8(dwarf_offset + 0x16, 0x4); in PutElfInMemory()
307 memory->SetData8(dwarf_offset + 0x17, 0x4); in PutElfInMemory()
308 memory->SetData8(dwarf_offset + 0x18, 0x1); in PutElfInMemory()
311 memory->SetData32(dwarf_offset + 0x100, 0xffffffff); in PutElfInMemory()
312 memory->SetData64(dwarf_offset + 0x104, 0xf4); in PutElfInMemory()
313 memory->SetData64(dwarf_offset + 0x10c, 0); in PutElfInMemory()
314 memory->SetData64(dwarf_offset + 0x114, pc); in PutElfInMemory()
315 memory->SetData64(dwarf_offset + 0x11c, size); in PutElfInMemory()
319 void PutElfFilesInMemory(MemoryFake* memory, FuzzedDataProvider* data_provider) { in PutElfFilesInMemory() argument
335 PutElfInMemory<Elf64_Ehdr, Elf64_Shdr>(memory, offset, class_type, machine_type, pc, size); in PutElfFilesInMemory()
337 PutElfInMemory<Elf32_Ehdr, Elf32_Shdr>(memory, offset, class_type, machine_type, pc, size); in PutElfFilesInMemory()
348 WriteDescriptor64(memory, 0x11800, cur_jit_addr); in PutElfFilesInMemory()
349 WriteEntry64(memory, cur_jit_addr, prev_jit_addr, next_jit_addr, pc, size); in PutElfFilesInMemory()
360 WriteDescriptor32(memory, cur_descriptor_addr, cur_jit_addr); in PutElfFilesInMemory()
362 WriteEntry32Pad(memory, cur_jit_addr, prev_jit_addr, next_jit_addr, pc, size); in PutElfFilesInMemory()
364 WriteEntry32Pack(memory, cur_jit_addr, prev_jit_addr, next_jit_addr, pc, size); in PutElfFilesInMemory()
384 std::shared_ptr<Memory> memory, uint max_library_length, in GetDexFiles() argument
389 return CreateDexFiles(arch, memory); in GetDexFiles()
392 return CreateDexFiles(arch, memory, search_libs); in GetDexFiles()