/system/core/libunwindstack/ |
D | LocalUnwinder.cpp | 105 uint64_t rel_pc = elf->GetRelPc(cur_pc, map_info); in Unwind() local 106 uint64_t step_pc = rel_pc; in Unwind() 109 pc_adjustment = regs->GetPcAdjustment(rel_pc, elf); in Unwind() 116 if (elf->StepIfSignalHandler(rel_pc, regs.get(), process_memory_.get())) { in Unwind() 117 step_pc = rel_pc; in Unwind() 127 if (elf->GetFunctionName(rel_pc, &func_name, &func_offset)) { in Unwind() 128 frame_info->emplace_back(map_info, cur_pc - pc_adjustment, rel_pc - pc_adjustment, in Unwind() 131 frame_info->emplace_back(map_info, cur_pc - pc_adjustment, rel_pc - pc_adjustment, "", 0); in Unwind()
|
D | Unwinder.cpp | 73 frame->rel_pc = dex_pc - info->start; in FillInDexFrame() 75 frame->rel_pc = dex_pc; in FillInDexFrame() 93 FrameData* Unwinder::FillInFrame(MapInfo* map_info, Elf* elf, uint64_t rel_pc, in FillInFrame() argument 100 frame->rel_pc = rel_pc - pc_adjustment; in FillInFrame() 158 uint64_t rel_pc; in Unwind() local 162 rel_pc = step_pc; in Unwind() 176 rel_pc = elf->GetRelPc(step_pc, map_info); in Unwind() 179 step_pc = rel_pc; in Unwind() 182 pc_adjustment = regs_->GetPcAdjustment(rel_pc, elf); in Unwind() 218 frame = FillInFrame(map_info, elf, rel_pc, pc_adjustment); in Unwind() [all …]
|
D | RegsArm.cpp | 54 uint64_t RegsArm::GetPcAdjustment(uint64_t rel_pc, Elf* elf) { in GetPcAdjustment() argument 60 if (rel_pc < load_bias) { in GetPcAdjustment() 61 if (rel_pc < 2) { in GetPcAdjustment() 66 uint64_t adjusted_rel_pc = rel_pc - load_bias; in GetPcAdjustment() 130 bool RegsArm::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument 135 if (!elf_memory->ReadFully(rel_pc, &data, sizeof(data))) { in StepIfSignalHandler()
|
D | RegsX86_64.cpp | 54 uint64_t RegsX86_64::GetPcAdjustment(uint64_t rel_pc, Elf*) { in GetPcAdjustment() argument 55 if (rel_pc == 0) { in GetPcAdjustment() 142 bool RegsX86_64::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument 147 if (!elf_memory->ReadFully(rel_pc, &data, sizeof(data)) || data != 0x0f0000000fc0c748) { in StepIfSignalHandler() 152 if (!elf_memory->ReadFully(rel_pc + 8, &data2, sizeof(data2)) || data2 != 0x0f05) { in StepIfSignalHandler()
|
D | RegsArm64.cpp | 55 uint64_t RegsArm64::GetPcAdjustment(uint64_t rel_pc, Elf*) { in GetPcAdjustment() argument 56 if (rel_pc < 4) { in GetPcAdjustment() 127 bool RegsArm64::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument 132 if (!elf_memory->ReadFully(rel_pc, &data, sizeof(data))) { in StepIfSignalHandler()
|
D | RegsMips64.cpp | 55 uint64_t RegsMips64::GetPcAdjustment(uint64_t rel_pc, Elf*) { in GetPcAdjustment() argument 56 if (rel_pc < 8) { in GetPcAdjustment() 130 bool RegsMips64::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument 135 if (!elf_memory->Read(rel_pc, &data, sizeof(data))) { in StepIfSignalHandler()
|
D | RegsMips.cpp | 55 uint64_t RegsMips::GetPcAdjustment(uint64_t rel_pc, Elf*) { in GetPcAdjustment() argument 56 if (rel_pc < 8) { in GetPcAdjustment() 132 bool RegsMips::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument 138 if (!elf_memory->ReadFully(rel_pc, &data, sizeof(data))) { in StepIfSignalHandler()
|
D | RegsX86.cpp | 53 uint64_t RegsX86::GetPcAdjustment(uint64_t rel_pc, Elf*) { in GetPcAdjustment() argument 54 if (rel_pc == 0) { in GetPcAdjustment() 122 bool RegsX86::StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) { in StepIfSignalHandler() argument 127 if (!elf_memory->ReadFully(rel_pc, &data, sizeof(data))) { in StepIfSignalHandler()
|
D | Elf.cpp | 174 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()
|
/system/core/libunwindstack/include/unwindstack/ |
D | LocalUnwinder.h | 39 LocalFrameData(MapInfo* map_info, uint64_t pc, uint64_t rel_pc, const std::string& function_name, in LocalFrameData() 43 rel_pc(rel_pc), in LocalFrameData() 49 uint64_t rel_pc; member
|
D | RegsMips.h | 39 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override; 43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
|
D | RegsArm64.h | 39 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override; 43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
|
D | RegsArm.h | 39 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override; 43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
|
D | RegsMips64.h | 39 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override; 43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
|
D | RegsX86_64.h | 40 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override; 44 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
|
D | RegsX86.h | 40 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override; 44 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
|
D | Regs.h | 67 virtual uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) = 0; 69 virtual bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) = 0;
|
D | Elf.h | 70 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);
|
D | Unwinder.h | 43 uint64_t rel_pc; member 123 FrameData* FillInFrame(MapInfo* map_info, Elf* elf, uint64_t rel_pc, uint64_t pc_adjustment);
|
/system/core/libunwindstack/tests/ |
D | UnwinderTest.cpp | 173 EXPECT_EQ(0U, frame->rel_pc); in TEST_F() 188 EXPECT_EQ(0x100U, frame->rel_pc); in TEST_F() 203 EXPECT_EQ(0x200U, frame->rel_pc); in TEST_F() 238 EXPECT_EQ(0U, frame->rel_pc); in TEST_F() 253 EXPECT_EQ(0x100U, frame->rel_pc); in TEST_F() 268 EXPECT_EQ(0x200U, frame->rel_pc); in TEST_F() 298 EXPECT_EQ(0x5500U, frame->rel_pc); in TEST_F() 328 EXPECT_EQ(0x8500U, frame->rel_pc); in TEST_F() 358 EXPECT_EQ(0U, frame->rel_pc); in TEST_F() 389 EXPECT_EQ(0U, frame->rel_pc); in TEST_F() [all …]
|
D | LocalUnwinderTest.cpp | 59 frame.pc, frame.rel_pc); in ErrorMsg()
|
/system/core/debuggerd/libdebuggerd/test/ |
D | tombstone_test.cpp | 383 unwindstack::FrameData{.num = 0, .rel_pc = 0x1000, .pc = 0x301000, .sp = 0x2000}); in TEST_F() 467 unwindstack::FrameData{.num = 0, .rel_pc = 0x1000, .pc = 0x301000, .sp = 0x2000}); in TEST_F() 469 unwindstack::FrameData{.num = 0, .rel_pc = 0x1400, .pc = 0x301400, .sp = 0x2000}); in TEST_F() 557 unwindstack::FrameData{.num = 0, .rel_pc = 0x1000, .pc = 0x301000, .sp = 0x2000}); in TEST_F() 559 unwindstack::FrameData{.num = 0, .rel_pc = 0x1400, .pc = 0x301400, .sp = 0x2010}); in TEST_F() 561 unwindstack::FrameData{.num = 0, .rel_pc = 0x1400, .pc = 0x301400, .sp = 0x2100}); in TEST_F() 685 unwindstack::FrameData{.num = 0, .rel_pc = 0x1000, .pc = 0x301000, .sp = 0x2000}); in TEST_F() 687 unwindstack::FrameData{.num = 0, .rel_pc = 0x1400, .pc = 0x301400, .sp = 0x2010}); in TEST_F() 689 unwindstack::FrameData{.num = 0, .rel_pc = 0x1400, .pc = 0x301400, .sp = 0x1000}); in TEST_F() 691 unwindstack::FrameData{.num = 0, .rel_pc = 0x1400, .pc = 0x301400, .sp = 0x1030}); in TEST_F()
|
/system/core/libbacktrace/ |
D | UnwindStack.cpp | 114 back_frame->rel_pc = frame->rel_pc; in Unwind()
|
D | Backtrace.cpp | 99 std::string line(StringPrintf("#%02zu pc %" PRIPTR " ", frame->num, frame->rel_pc)); in FormatFrameData()
|
/system/core/libbacktrace/include/backtrace/ |
D | Backtrace.h | 87 uint64_t rel_pc; // The relative pc. member
|