From af65c6bfa339ec34d335afb421c00a3f78884e6e Mon Sep 17 00:00:00 2001 From: ftilde Date: Fri, 26 Oct 2018 23:37:47 +0200 Subject: [PATCH] Fix using R8-15 in adressing --- src/encoding.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/encoding.rs b/src/encoding.rs index ff1ec1c..18f9d0b 100644 --- a/src/encoding.rs +++ b/src/encoding.rs @@ -531,7 +531,10 @@ fn encode_indirect_64(buffer: &mut InstructionBuffer, base: Option, index: match base { Some(Reg::RAX) | Some(Reg::RBX) | Some(Reg::RCX) | - Some(Reg::RDX) | Some(Reg::RSI) | Some(Reg::RDI) => { + Some(Reg::RDX) | Some(Reg::RSI) | Some(Reg::RDI) | + Some(Reg::R8) | Some(Reg::R9) | Some(Reg::R10) | + Some(Reg::R11) | Some(Reg::R12) | Some(Reg::R13) | + Some(Reg::R14) | Some(Reg::R15) => { match index { Some(index_reg) if index_reg != Reg::RSP => { buffer.mod_rm_rm = Some(4); // Force SIB