Home
last modified time | relevance | path

Searched refs:rel_pc (Results 1 – 25 of 30) sorted by relevance

12

/system/core/libunwindstack/
DLocalUnwinder.cpp105 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()
DUnwinder.cpp73 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 …]
DRegsArm.cpp54 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()
DRegsX86_64.cpp54 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()
DRegsArm64.cpp55 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()
DRegsMips64.cpp55 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()
DRegsMips.cpp55 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()
DRegsX86.cpp53 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()
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()
/system/core/libunwindstack/include/unwindstack/
DLocalUnwinder.h39 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
DRegsMips.h39 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override;
43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegsArm64.h39 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override;
43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegsArm.h39 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override;
43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegsMips64.h39 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override;
43 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegsX86_64.h40 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override;
44 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegsX86.h40 uint64_t GetPcAdjustment(uint64_t rel_pc, Elf* elf) override;
44 bool StepIfSignalHandler(uint64_t rel_pc, Elf* elf, Memory* process_memory) override;
DRegs.h67 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;
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);
DUnwinder.h43 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/
DUnwinderTest.cpp173 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 …]
DLocalUnwinderTest.cpp59 frame.pc, frame.rel_pc); in ErrorMsg()
/system/core/debuggerd/libdebuggerd/test/
Dtombstone_test.cpp383 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/
DUnwindStack.cpp114 back_frame->rel_pc = frame->rel_pc; in Unwind()
DBacktrace.cpp99 std::string line(StringPrintf("#%02zu pc %" PRIPTR " ", frame->num, frame->rel_pc)); in FormatFrameData()
/system/core/libbacktrace/include/backtrace/
DBacktrace.h87 uint64_t rel_pc; // The relative pc. member

12