diff --git a/src/crypto/randomx/jit_compiler_a64.cpp b/src/crypto/randomx/jit_compiler_a64.cpp index f98e36f6..da1d2471 100644 --- a/src/crypto/randomx/jit_compiler_a64.cpp +++ b/src/crypto/randomx/jit_compiler_a64.cpp @@ -171,7 +171,7 @@ void JitCompilerA64::generateProgram(Program& program, ProgramConfiguration& con emit32(ARMV8A::EOR | 10 | (IntRegMap[config.readReg0] << 5) | (IntRegMap[config.readReg1] << 16), code, codePos); # ifndef XMRIG_OS_APPLE - xmrig::VirtualMemory::flushInstructionCache(reinterpret_cast(code + MainLoopBegin), reinterpret_cast(code + codePos)); + xmrig::VirtualMemory::flushInstructionCache(reinterpret_cast(code + MainLoopBegin), codePos - MainLoopBegin); # endif } @@ -237,7 +237,7 @@ void JitCompilerA64::generateProgramLight(Program& program, ProgramConfiguration emit32(ARMV8A::ADD_IMM_HI | 2 | (2 << 5) | (imm_hi << 10), code, codePos); # ifndef XMRIG_OS_APPLE - xmrig::VirtualMemory::flushInstructionCache(reinterpret_cast(code + MainLoopBegin), reinterpret_cast(code + codePos)); + xmrig::VirtualMemory::flushInstructionCache(reinterpret_cast(code + MainLoopBegin), codePos - MainLoopBegin); # endif } @@ -364,7 +364,7 @@ void JitCompilerA64::generateSuperscalarHash(SuperscalarProgram(&programs)[N]) codePos += p2 - p1; # ifndef XMRIG_OS_APPLE - xmrig::VirtualMemory::flushInstructionCache(reinterpret_cast(code + CodeSize), reinterpret_cast(code + codePos)); + xmrig::VirtualMemory::flushInstructionCache(reinterpret_cast(code + CodeSize), codePos - MainLoopBegin); # endif } diff --git a/src/crypto/rx/RxConfig.h b/src/crypto/rx/RxConfig.h index 78d2f964..ea1bf685 100644 --- a/src/crypto/rx/RxConfig.h +++ b/src/crypto/rx/RxConfig.h @@ -113,7 +113,6 @@ private: Mode readMode(const rapidjson::Value &value) const; - bool m_numa = true; bool m_oneGbPages = false; bool m_rdmsr = true; int m_threads = -1; @@ -123,6 +122,7 @@ private: ScratchpadPrefetchMode m_scratchpadPrefetchMode = ScratchpadPrefetchT0; # ifdef XMRIG_FEATURE_HWLOC + bool m_numa = true; std::vector m_nodeset; # endif