Browse Source

fixes

pull/3013/head
lizzie 3 months ago
committed by crueter
parent
commit
3853f803ef
  1. 2
      src/core/arm/dynarmic/arm_dynarmic_32.cpp
  2. 2
      src/core/arm/dynarmic/arm_dynarmic_64.cpp
  3. 5
      src/dynarmic/src/dynarmic/backend/x64/a64_interface.cpp

2
src/core/arm/dynarmic/arm_dynarmic_32.cpp

@ -211,7 +211,7 @@ std::shared_ptr<Dynarmic::A32::Jit> ArmDynarmic32::MakeJit(Common::PageTable* pa
config.enable_cycle_counting = !m_uses_wall_clock;
// Code cache size
#ifdef ARCHITECTURE_arm64
#if defined(ARCHITECTURE_arm64) || defined(__sun__)
config.code_cache_size = std::uint32_t(128_MiB);
#else
config.code_cache_size = std::uint32_t(512_MiB);

2
src/core/arm/dynarmic/arm_dynarmic_64.cpp

@ -270,7 +270,7 @@ std::shared_ptr<Dynarmic::A64::Jit> ArmDynarmic64::MakeJit(Common::PageTable* pa
config.enable_cycle_counting = !m_uses_wall_clock;
// Code cache size
#ifdef ARCHITECTURE_arm64
#if defined(ARCHITECTURE_arm64) || defined(__sun__)
config.code_cache_size = std::uint32_t(128_MiB);
#else
config.code_cache_size = std::uint32_t(512_MiB);

5
src/dynarmic/src/dynarmic/backend/x64/a64_interface.cpp

@ -86,10 +86,9 @@ public:
const u32 new_rsb_ptr = (jit_state.rsb_ptr - 1) & A64JitState::RSBPtrMask;
if (jit_state.GetUniqueHash() == jit_state.rsb_location_descriptors[new_rsb_ptr]) {
jit_state.rsb_ptr = new_rsb_ptr;
return reinterpret_cast<CodePtr>(jit_state.rsb_codeptrs[new_rsb_ptr]);
return CodePtr(jit_state.rsb_codeptrs[new_rsb_ptr]);
}
return GetCurrentBlock();
return CodePtr((uintptr_t(GetCurrentBlock()) + 15) & ~uintptr_t(15));
}();
const HaltReason hr = block_of_code.RunCode(&jit_state, current_code_ptr);

Loading…
Cancel
Save