diff options
author | bunnei <bunneidev@gmail.com> | 2019-11-15 18:08:50 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-11-15 18:08:50 +0100 |
commit | 3e0e4f146b3f2ad7f1935a61141c38cdce87e04f (patch) | |
tree | 75f29ce4bb9d84f9d9722b7aa86d71e805cac8cc /src/core/arm/unicorn | |
parent | Merge pull request #3113 from lioncash/semi (diff) | |
parent | externals: Update httplib (diff) | |
download | yuzu-3e0e4f146b3f2ad7f1935a61141c38cdce87e04f.tar yuzu-3e0e4f146b3f2ad7f1935a61141c38cdce87e04f.tar.gz yuzu-3e0e4f146b3f2ad7f1935a61141c38cdce87e04f.tar.bz2 yuzu-3e0e4f146b3f2ad7f1935a61141c38cdce87e04f.tar.lz yuzu-3e0e4f146b3f2ad7f1935a61141c38cdce87e04f.tar.xz yuzu-3e0e4f146b3f2ad7f1935a61141c38cdce87e04f.tar.zst yuzu-3e0e4f146b3f2ad7f1935a61141c38cdce87e04f.zip |
Diffstat (limited to 'src/core/arm/unicorn')
-rw-r--r-- | src/core/arm/unicorn/arm_unicorn.cpp | 14 | ||||
-rw-r--r-- | src/core/arm/unicorn/arm_unicorn.h | 2 |
2 files changed, 9 insertions, 7 deletions
diff --git a/src/core/arm/unicorn/arm_unicorn.cpp b/src/core/arm/unicorn/arm_unicorn.cpp index d4f41bfc1..9698172db 100644 --- a/src/core/arm/unicorn/arm_unicorn.cpp +++ b/src/core/arm/unicorn/arm_unicorn.cpp @@ -67,10 +67,11 @@ ARM_Unicorn::ARM_Unicorn(System& system) : system{system} { CHECKED(uc_reg_write(uc, UC_ARM64_REG_CPACR_EL1, &fpv)); uc_hook hook{}; - CHECKED(uc_hook_add(uc, &hook, UC_HOOK_INTR, (void*)InterruptHook, this, 0, -1)); - CHECKED(uc_hook_add(uc, &hook, UC_HOOK_MEM_INVALID, (void*)UnmappedMemoryHook, &system, 0, -1)); + CHECKED(uc_hook_add(uc, &hook, UC_HOOK_INTR, (void*)InterruptHook, this, 0, UINT64_MAX)); + CHECKED(uc_hook_add(uc, &hook, UC_HOOK_MEM_INVALID, (void*)UnmappedMemoryHook, &system, 0, + UINT64_MAX)); if (GDBStub::IsServerEnabled()) { - CHECKED(uc_hook_add(uc, &hook, UC_HOOK_CODE, (void*)CodeHook, this, 0, -1)); + CHECKED(uc_hook_add(uc, &hook, UC_HOOK_CODE, (void*)CodeHook, this, 0, UINT64_MAX)); last_bkpt_hit = false; } } @@ -154,9 +155,10 @@ void ARM_Unicorn::SetTPIDR_EL0(u64 value) { void ARM_Unicorn::Run() { if (GDBStub::IsServerEnabled()) { - ExecuteInstructions(std::max(4000000, 0)); + ExecuteInstructions(std::max(4000000U, 0U)); } else { - ExecuteInstructions(std::max(system.CoreTiming().GetDowncount(), s64{0})); + ExecuteInstructions( + std::max(std::size_t(system.CoreTiming().GetDowncount()), std::size_t{0})); } } @@ -166,7 +168,7 @@ void ARM_Unicorn::Step() { MICROPROFILE_DEFINE(ARM_Jit_Unicorn, "ARM JIT", "Unicorn", MP_RGB(255, 64, 64)); -void ARM_Unicorn::ExecuteInstructions(int num_instructions) { +void ARM_Unicorn::ExecuteInstructions(std::size_t num_instructions) { MICROPROFILE_SCOPE(ARM_Jit_Unicorn); CHECKED(uc_emu_start(uc, GetPC(), 1ULL << 63, 0, num_instructions)); system.CoreTiming().AddTicks(num_instructions); diff --git a/src/core/arm/unicorn/arm_unicorn.h b/src/core/arm/unicorn/arm_unicorn.h index fe2ffd70c..b39426ea0 100644 --- a/src/core/arm/unicorn/arm_unicorn.h +++ b/src/core/arm/unicorn/arm_unicorn.h @@ -34,7 +34,7 @@ public: void LoadContext(const ThreadContext& ctx) override; void PrepareReschedule() override; void ClearExclusiveState() override; - void ExecuteInstructions(int num_instructions); + void ExecuteInstructions(std::size_t num_instructions); void Run() override; void Step() override; void ClearInstructionCache() override; |