diff options
Diffstat (limited to 'src/core')
| -rw-r--r-- | src/core/arm/nce/arm_nce.cpp | 2 | ||||
| -rw-r--r-- | src/core/arm/nce/interpreter_visitor.cpp | 5 | ||||
| -rw-r--r-- | src/core/arm/nce/visitor_base.h | 6 | ||||
| -rw-r--r-- | src/core/hle/service/hid/hid_server.cpp | 2 | 
4 files changed, 10 insertions, 5 deletions
diff --git a/src/core/arm/nce/arm_nce.cpp b/src/core/arm/nce/arm_nce.cpp index 1311e66a9..123b3da7e 100644 --- a/src/core/arm/nce/arm_nce.cpp +++ b/src/core/arm/nce/arm_nce.cpp @@ -39,7 +39,7 @@ fpsimd_context* GetFloatingPointState(mcontext_t& host_ctx) {  }  using namespace Common::Literals; -constexpr u32 StackSize = 32_KiB; +constexpr u32 StackSize = 128_KiB;  } // namespace diff --git a/src/core/arm/nce/interpreter_visitor.cpp b/src/core/arm/nce/interpreter_visitor.cpp index 8e81c66a5..def888d15 100644 --- a/src/core/arm/nce/interpreter_visitor.cpp +++ b/src/core/arm/nce/interpreter_visitor.cpp @@ -5,8 +5,6 @@  #include "common/bit_cast.h"  #include "core/arm/nce/interpreter_visitor.h" -#include <dynarmic/frontend/A64/decoder/a64.h> -  namespace Core {  template <u32 BitSize> @@ -249,6 +247,7 @@ bool InterpreterVisitor::LDR_lit_fpsimd(Imm<2> opc, Imm<19> imm19, Vec Vt) {          return false;      } +    // Size in bytes      const u64 size = 4 << opc.ZeroExtend();      const u64 offset = imm19.SignExtend<u64>() << 2;      const u64 address = this->GetPc() + offset; @@ -530,7 +529,7 @@ bool InterpreterVisitor::SIMDImmediate(bool wback, bool postindex, size_t scale,      }      case MemOp::Load: {          u128 data{}; -        m_memory.ReadBlock(address, &data, datasize); +        m_memory.ReadBlock(address, &data, datasize / 8);          this->SetVec(Vt, data);          break;      } diff --git a/src/core/arm/nce/visitor_base.h b/src/core/arm/nce/visitor_base.h index 8fb032912..6a2be3d9b 100644 --- a/src/core/arm/nce/visitor_base.h +++ b/src/core/arm/nce/visitor_base.h @@ -4,9 +4,15 @@  #pragma once +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wshadow" +  #include <dynarmic/frontend/A64/a64_types.h> +#include <dynarmic/frontend/A64/decoder/a64.h>  #include <dynarmic/frontend/imm.h> +#pragma GCC diagnostic pop +  namespace Core {  class VisitorBase { diff --git a/src/core/hle/service/hid/hid_server.cpp b/src/core/hle/service/hid/hid_server.cpp index de24b0401..06a01c02c 100644 --- a/src/core/hle/service/hid/hid_server.cpp +++ b/src/core/hle/service/hid/hid_server.cpp @@ -51,7 +51,7 @@ private:          IPC::RequestParser rp{ctx};          const auto vibration_device_handle{rp.PopRaw<Core::HID::VibrationDeviceHandle>()}; -        if (resource_manager != nullptr) { +        if (resource_manager != nullptr && resource_manager->GetNpad()) {              resource_manager->GetNpad()->InitializeVibrationDevice(vibration_device_handle);          }  | 
