Lines Matching defs:pc
57 UnwindMacOSXFrameBackchain::DoGetFrameInfoAtIndex (uint32_t idx, addr_t& cfa, addr_t& pc)
62 if (m_cursors[idx].pc == LLDB_INVALID_ADDRESS)
67 pc = m_cursors[idx].pc;
102 uint32_t pc;
109 cursor.pc = reg_ctx->GetPC (LLDB_INVALID_ADDRESS);
112 Frame_i386 frame = { static_cast<uint32_t>(cursor.fp), static_cast<uint32_t>(cursor.pc) };
118 while (frame.fp != 0 && frame.pc != 0 && ((frame.fp & 7) == 0))
120 // Read both the FP and PC (8 bytes)
123 if (frame.pc >= 0x1000)
125 cursor.pc = frame.pc;
132 lldb::addr_t first_frame_pc = m_cursors.front().pc;
157 // previous PC by dereferencing the SP
159 // Read the real second frame return address into frame.pc
160 if (first_frame_sp && process->ReadMemory (first_frame_sp, &frame.pc, sizeof(frame.pc), error) == sizeof(frame.pc))
163 cursor.pc = frame.pc; // Set the new second frame PC
175 // printf(" PC FP\n");
179 // printf("[%3u] 0x%16.16" PRIx64 " 0x%16.16" PRIx64 "\n", i, m_cursors[i].pc, m_cursors[i].fp);
201 uint64_t pc;
208 cursor.pc = reg_ctx->GetPC (LLDB_INVALID_ADDRESS);
211 Frame_x86_64 frame = { cursor.fp, cursor.pc };
216 while (frame.fp != 0 && frame.pc != 0 && ((frame.fp & 7) == 0))
218 // Read both the FP and PC (16 bytes)
222 if (frame.pc >= 0x1000)
224 cursor.pc = frame.pc;
231 lldb::addr_t first_frame_pc = m_cursors.front().pc;
256 // previous PC by dereferencing the SP
258 // Read the real second frame return address into frame.pc
259 if (process->ReadMemory (first_frame_sp, &frame.pc, sizeof(frame.pc), error) == sizeof(frame.pc))
262 cursor.pc = frame.pc; // Set the new second frame PC