Home
last modified time | relevance | path

Searched refs:process_memory (Results 1 – 25 of 37) sorted by relevance

12

/system/core/libunwindstack/benchmarks/
Dunwind_benchmarks.cpp32 size_t Call6(std::shared_ptr<unwindstack::Memory>& process_memory, unwindstack::Maps* maps) { in Call6() argument
35 unwindstack::Unwinder unwinder(32, maps, regs.get(), process_memory); in Call6()
40 size_t Call5(std::shared_ptr<unwindstack::Memory>& process_memory, unwindstack::Maps* maps) { in Call5() argument
41 return Call6(process_memory, maps); in Call5()
44 size_t Call4(std::shared_ptr<unwindstack::Memory>& process_memory, unwindstack::Maps* maps) { in Call4() argument
45 return Call5(process_memory, maps); in Call4()
48 size_t Call3(std::shared_ptr<unwindstack::Memory>& process_memory, unwindstack::Maps* maps) { in Call3() argument
49 return Call4(process_memory, maps); in Call3()
52 size_t Call2(std::shared_ptr<unwindstack::Memory>& process_memory, unwindstack::Maps* maps) { in Call2() argument
53 return Call3(process_memory, maps); in Call2()
[all …]
/system/core/libunwindstack/
DMapInfo.cpp133 Memory* MapInfo::CreateMemory(const std::shared_ptr<Memory>& process_memory) { in CreateMemory() argument
153 if (process_memory == nullptr) { in CreateMemory()
162 std::unique_ptr<MemoryRange> memory(new MemoryRange(process_memory, start, end - start, 0)); in CreateMemory()
185 new MemoryRange(process_memory, prev_map->start, prev_map->end - prev_map->start, 0)); in CreateMemory()
186 ranges->Insert(new MemoryRange(process_memory, start, end - start, elf_offset)); in CreateMemory()
192 Elf* MapInfo::GetElf(const std::shared_ptr<Memory>& process_memory, ArchEnum expected_arch) { in GetElf() argument
211 Memory* memory = CreateMemory(process_memory); in GetElf()
261 uint64_t MapInfo::GetLoadBias(const std::shared_ptr<Memory>& process_memory) { in GetLoadBias() argument
284 std::unique_ptr<Memory> memory(CreateMemory(process_memory)); in GetLoadBias()
DRegsX86.cpp60 bool RegsX86::SetPcFromReturnAddress(Memory* process_memory) { in SetPcFromReturnAddress() argument
63 if (!process_memory->ReadFully(regs_[X86_REG_SP], &new_pc, sizeof(new_pc)) || in SetPcFromReturnAddress()
122 bool RegsX86::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument
143 if (!process_memory->ReadFully(regs_[X86_REG_SP] + 4, &context, sizeof(context))) { in StepIfSignalHandler()
168 if (!process_memory->ReadFully(regs_[X86_REG_SP] + 8, &ptr, sizeof(ptr))) { in StepIfSignalHandler()
173 if (!process_memory->ReadFully(ptr + 0x14, &x86_ucontext.uc_mcontext, sizeof(x86_mcontext_t))) { in StepIfSignalHandler()
DElfInterfaceArm.cpp103 bool ElfInterfaceArm::Step(uint64_t pc, Regs* regs, Memory* process_memory, bool* finished) { in Step() argument
108 return ElfInterface32::Step(pc, regs, process_memory, finished) || in Step()
109 StepExidx(pc, regs, process_memory, finished); in Step()
112 bool ElfInterfaceArm::StepExidx(uint64_t pc, Regs* regs, Memory* process_memory, bool* finished) { in StepExidx() argument
126 ArmExidx arm(regs_arm, memory_, process_memory); in StepExidx()
DRegsArm.cpp130 bool RegsArm::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument
155 if (!process_memory->ReadFully(sp, &data, sizeof(data))) { in StepIfSignalHandler()
180 if (!process_memory->ReadFully(sp, &data, sizeof(data))) { in StepIfSignalHandler()
195 if (!process_memory->ReadFully(offset, regs_.data(), sizeof(uint32_t) * ARM_REG_LAST)) { in StepIfSignalHandler()
DRegsX86_64.cpp61 bool RegsX86_64::SetPcFromReturnAddress(Memory* process_memory) { in SetPcFromReturnAddress() argument
64 if (!process_memory->ReadFully(regs_[X86_64_REG_SP], &new_pc, sizeof(new_pc)) || in SetPcFromReturnAddress()
142 bool RegsX86_64::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument
164 if (!process_memory->ReadFully(regs_[X86_64_REG_SP] + 0x28, &x86_64_ucontext.uc_mcontext, in StepIfSignalHandler()
DRegsMips64.cpp130 bool RegsMips64::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument
151 if (!process_memory->Read(sp + 24 + 128 + 40, regs_.data(), in StepIfSignalHandler()
158 if (!process_memory->Read(sp + 24 + 128 + 40 + 576, &regs_[MIPS64_REG_PC], sizeof(uint64_t))) { in StepIfSignalHandler()
DArmExidx.h56 ArmExidx(RegsArm* regs, Memory* elf_memory, Memory* process_memory) in ArmExidx() argument
57 : regs_(regs), elf_memory_(elf_memory), process_memory_(process_memory) {} in ArmExidx()
DElfInterfaceArm.h75 bool Step(uint64_t pc, Regs* regs, Memory* process_memory, bool* finished) override;
77 bool StepExidx(uint64_t pc, Regs* regs, Memory* process_memory, bool* finished);
DElf.cpp174 bool Elf::StepIfSignalHandler(uint64_t rel_pc, Regs* regs, Memory* process_memory) { in StepIfSignalHandler() argument
178 return regs->StepIfSignalHandler(rel_pc, this, process_memory); in StepIfSignalHandler()
182 bool Elf::Step(uint64_t rel_pc, Regs* regs, Memory* process_memory, bool* finished) { in Step() argument
189 return interface_->Step(rel_pc, regs, process_memory, finished); in Step()
DRegsArm64.cpp127 bool RegsArm64::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument
145 if (!process_memory->ReadFully(regs_[ARM64_REG_SP] + 0x80 + 0xb0 + 0x08, regs_.data(), in StepIfSignalHandler()
/system/core/libunwindstack/include/unwindstack/
DMapInfo.h82 Elf* GetElf(const std::shared_ptr<Memory>& process_memory, ArchEnum expected_arch);
84 uint64_t GetLoadBias(const std::shared_ptr<Memory>& process_memory);
86 Memory* CreateMemory(const std::shared_ptr<Memory>& process_memory);
DUnwinder.h66 Unwinder(size_t max_frames, Maps* maps, Regs* regs, std::shared_ptr<Memory> process_memory) in Unwinder() argument
67 : max_frames_(max_frames), maps_(maps), regs_(regs), process_memory_(process_memory) { in Unwinder()
70 Unwinder(size_t max_frames, Maps* maps, std::shared_ptr<Memory> process_memory) in Unwinder() argument
71 : max_frames_(max_frames), maps_(maps), process_memory_(process_memory) { in Unwinder()
DRegsMips.h41 bool SetPcFromReturnAddress(Memory* process_memory) override;
43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegsArm64.h41 bool SetPcFromReturnAddress(Memory* process_memory) override;
43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegsArm.h41 bool SetPcFromReturnAddress(Memory* process_memory) override;
43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegsMips64.h41 bool SetPcFromReturnAddress(Memory* process_memory) override;
43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegsX86_64.h42 bool SetPcFromReturnAddress(Memory* process_memory) override;
44 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegsX86.h42 bool SetPcFromReturnAddress(Memory* process_memory) override;
44 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegs.h69 virtual bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) = 0;
71 virtual bool SetPcFromReturnAddress(Memory* process_memory) = 0;
DElf.h70 bool StepIfSignalHandler(uint64_t rel_pc, Regs* regs, Memory* process_memory);
72 bool Step(uint64_t rel_pc, Regs* regs, Memory* process_memory, bool* finished);
/system/core/libunwindstack/tests/
DUnwindTest.cpp131 auto process_memory(Memory::CreateProcessMemory(pid)); in VerifyUnwind() local
133 Unwinder unwinder(512, maps, regs, process_memory); in VerifyUnwind()
169 auto process_memory(Memory::CreateProcessMemory(getpid())); in InnerFunction() local
170 unwinder.reset(new Unwinder(512, maps.get(), regs.get(), process_memory)); in InnerFunction()
451 auto process_memory(Memory::CreateProcessMemory(getpid())); in TEST_F() local
459 std::thread* thread = new std::thread([i, &frames, &maps, &process_memory, &wait]() { in TEST_F()
465 Unwinder unwinder(512, &maps, regs.get(), process_memory); in TEST_F()
DMemoryRangeTest.cpp77 std::shared_ptr<Memory> process_memory(new MemoryFakeAlwaysReadZero); in TEST_F() local
78 std::unique_ptr<MemoryRange> overflow(new MemoryRange(process_memory, 100, 200, 0)); in TEST_F()
DElfTest.cpp295 MemoryFake process_memory; in TEST_F() local
296 process_memory.SetData32(0x50000, 0); in TEST_F()
298 process_memory.SetData32(0x500a0 + i * sizeof(uint32_t), i); in TEST_F()
302 ASSERT_TRUE(elf.StepIfSignalHandler(0x3000, &regs, &process_memory)); in TEST_F()
336 MemoryFake process_memory; in TEST_F() local
339 EXPECT_CALL(*interface, Step(0x1000, &regs, &process_memory, &finished)) in TEST_F()
342 ASSERT_TRUE(elf.Step(0x1000, &regs, &process_memory, &finished)); in TEST_F()
/system/core/libunwindstack/tools/
Dunwind_for_offline.cpp102 auto process_memory = unwindstack::Memory::CreateProcessMemory(pid); in SaveStack() local
103 if (!process_memory->Read(sp_start, buffer.data(), buffer.size())) { in SaveStack()
215 void SaveMapInformation(std::shared_ptr<unwindstack::Memory>& process_memory, map_info_t* info, in SaveMapInformation() argument
224 if (CreateElfFromMemory(process_memory, info)) { in SaveMapInformation()

12