|
|
|
@ -205,7 +205,7 @@ static Kernel::Thread* FindThreadById(int id) { |
|
|
|
for (u32 core = 0; core < Core::NUM_CPU_CORES; core++) { |
|
|
|
const auto& threads = Core::System::GetInstance().Scheduler(core)->GetThreadList(); |
|
|
|
for (auto& thread : threads) { |
|
|
|
if (thread->GetThreadId() == id) { |
|
|
|
if (thread->GetThreadId() == static_cast<u32>(id)) { |
|
|
|
current_core = core; |
|
|
|
return thread.get(); |
|
|
|
} |
|
|
|
@ -214,7 +214,7 @@ static Kernel::Thread* FindThreadById(int id) { |
|
|
|
return nullptr; |
|
|
|
} |
|
|
|
|
|
|
|
static u64 RegRead(int id, Kernel::Thread* thread = nullptr) { |
|
|
|
static u64 RegRead(std::size_t id, Kernel::Thread* thread = nullptr) { |
|
|
|
if (!thread) { |
|
|
|
return 0; |
|
|
|
} |
|
|
|
@ -234,7 +234,7 @@ static u64 RegRead(int id, Kernel::Thread* thread = nullptr) { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
static void RegWrite(int id, u64 val, Kernel::Thread* thread = nullptr) { |
|
|
|
static void RegWrite(std::size_t id, u64 val, Kernel::Thread* thread = nullptr) { |
|
|
|
if (!thread) { |
|
|
|
return; |
|
|
|
} |
|
|
|
@ -744,7 +744,7 @@ static bool IsDataAvailable() { |
|
|
|
fd_set fd_socket; |
|
|
|
|
|
|
|
FD_ZERO(&fd_socket); |
|
|
|
FD_SET(gdbserver_socket, &fd_socket); |
|
|
|
FD_SET(static_cast<u32>(gdbserver_socket), &fd_socket); |
|
|
|
|
|
|
|
struct timeval t; |
|
|
|
t.tv_sec = 0; |
|
|
|
@ -793,7 +793,7 @@ static void ReadRegisters() { |
|
|
|
|
|
|
|
u8* bufptr = buffer; |
|
|
|
|
|
|
|
for (int reg = 0; reg <= SP_REGISTER; reg++) { |
|
|
|
for (u32 reg = 0; reg <= SP_REGISTER; reg++) { |
|
|
|
LongToGdbHex(bufptr + reg * 16, RegRead(reg, current_thread)); |
|
|
|
} |
|
|
|
|
|
|
|
@ -807,7 +807,7 @@ static void ReadRegisters() { |
|
|
|
|
|
|
|
bufptr += 8; |
|
|
|
|
|
|
|
for (int reg = UC_ARM64_REG_Q0; reg <= UC_ARM64_REG_Q0 + 31; reg++) { |
|
|
|
for (u32 reg = UC_ARM64_REG_Q0; reg <= UC_ARM64_REG_Q0 + 31; reg++) { |
|
|
|
LongToGdbHex(bufptr + reg * 16, RegRead(reg, current_thread)); |
|
|
|
} |
|
|
|
|
|
|
|
@ -858,7 +858,7 @@ static void WriteRegisters() { |
|
|
|
if (command_buffer[0] != 'G') |
|
|
|
return SendReply("E01"); |
|
|
|
|
|
|
|
for (int i = 0, reg = 0; reg <= FPSCR_REGISTER; i++, reg++) { |
|
|
|
for (u32 i = 0, reg = 0; reg <= FPSCR_REGISTER; i++, reg++) { |
|
|
|
if (reg <= SP_REGISTER) { |
|
|
|
RegWrite(reg, GdbHexToLong(buffer_ptr + i * 16), current_thread); |
|
|
|
} else if (reg == PC_REGISTER) { |
|
|
|
|