From 187e55e28e0a9a4bf508926962a60b9854405dd7 Mon Sep 17 00:00:00 2001 From: SChernykh <sergey.v.chernykh@gmail.com> Date: Wed, 19 Jun 2019 12:45:05 +0200 Subject: [PATCH] Fixed RandomX for CPUs without AES --- src/workers/MultiWorker.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/workers/MultiWorker.cpp b/src/workers/MultiWorker.cpp index aed38d635..392f71e77 100644 --- a/src/workers/MultiWorker.cpp +++ b/src/workers/MultiWorker.cpp @@ -31,6 +31,7 @@ #include "workers/CpuThread.h" #include "workers/MultiWorker.h" #include "workers/Workers.h" +#include "common/cpu/Cpu.h" template<size_t N> @@ -56,7 +57,10 @@ template<size_t N> void MultiWorker<N>::allocateRandomX_VM() { if (!m_rx_vm) { - const int flags = RANDOMX_FLAG_LARGE_PAGES | RANDOMX_FLAG_HARD_AES | RANDOMX_FLAG_FULL_MEM | RANDOMX_FLAG_JIT; + int flags = RANDOMX_FLAG_LARGE_PAGES | RANDOMX_FLAG_FULL_MEM | RANDOMX_FLAG_JIT; + if (xmrig::Cpu::info()->hasAES()) + flags |= RANDOMX_FLAG_HARD_AES; + m_rx_vm = randomx_create_vm(static_cast<randomx_flags>(flags), nullptr, Workers::getDataset()); if (!m_rx_vm) { m_rx_vm = randomx_create_vm(static_cast<randomx_flags>(flags - RANDOMX_FLAG_LARGE_PAGES), nullptr, Workers::getDataset());