From ff0c5a58b3788e277bb5b1c617d14b2ce34ef03b Mon Sep 17 00:00:00 2001 From: tevador Date: Fri, 15 Feb 2019 11:14:40 +0100 Subject: [PATCH] More compact bytecode --- src/InterpretedVirtualMachine.hpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/InterpretedVirtualMachine.hpp b/src/InterpretedVirtualMachine.hpp index ac82ea5..ee7655b 100644 --- a/src/InterpretedVirtualMachine.hpp +++ b/src/InterpretedVirtualMachine.hpp @@ -39,14 +39,18 @@ namespace RandomX { typedef void(InterpretedVirtualMachine::*InstructionHandler)(Instruction&); struct alignas(8) InstructionByteCode { - int_reg_t* idst; - int_reg_t* isrc; + union { + int_reg_t* idst; + __m128d* fdst; + }; + union { + int_reg_t* isrc; + __m128d* fsrc; + }; union { uint64_t imm; int64_t simm; }; - __m128d* fdst; - __m128d* fsrc; uint32_t condition; uint32_t memMask; uint32_t type;