diff --git a/Iced/Intel/Instruction.cs b/Iced/Intel/Instruction.cs index 4bdc8af16..53fbfe513 100644 --- a/Iced/Intel/Instruction.cs +++ b/Iced/Intel/Instruction.cs @@ -1118,7 +1118,6 @@ namespace Iced.Intel { /// public int StackPointerIncrement { get { - CodeSize codeSize; switch (Code) { case Code.Pushw_ES: case Code.Pushw_CS: @@ -1328,14 +1327,12 @@ namespace Iced.Intel { return 8 + 8; case Code.Iretw: - codeSize = CodeSize; - if (codeSize == CodeSize.Code64 || codeSize == CodeSize.Unknown) + if (CodeSize == CodeSize.Code64) return 2 * 5; return 2 * 3; case Code.Iretd: - codeSize = CodeSize; - if (codeSize == CodeSize.Code64 || codeSize == CodeSize.Unknown) + if (CodeSize == CodeSize.Code64) return 4 * 5; return 4 * 3; diff --git a/Iced/Intel/InstructionInfoFactory.cs b/Iced/Intel/InstructionInfoFactory.cs index c55bbcc7c..cda5381bb 100644 --- a/Iced/Intel/InstructionInfoFactory.cs +++ b/Iced/Intel/InstructionInfoFactory.cs @@ -1088,7 +1088,7 @@ namespace Iced.Intel { AddMemory(flags, ref usedMemoryLocations, Register.SS, xsp, Register.None, 1, 0 * 4, MemorySize.UInt32, OpAccess.Read); AddMemory(flags, ref usedMemoryLocations, Register.SS, xsp, Register.None, 1, 1 * 4, MemorySize.UInt32, OpAccess.Read); AddMemory(flags, ref usedMemoryLocations, Register.SS, xsp, Register.None, 1, 2 * 4, MemorySize.UInt32, OpAccess.Read); - if ((flags & Flags.Is64Bit) != 0) { + if (instruction.CodeSize == CodeSize.Code64) { AddMemory(flags, ref usedMemoryLocations, Register.SS, xsp, Register.None, 1, 3 * 4, MemorySize.UInt32, OpAccess.Read); AddMemory(flags, ref usedMemoryLocations, Register.SS, xsp, Register.None, 1, 4 * 4, MemorySize.UInt32, OpAccess.Read); } @@ -1098,7 +1098,7 @@ namespace Iced.Intel { AddMemory(flags, ref usedMemoryLocations, Register.SS, xsp, Register.None, 1, 0 * 2, MemorySize.UInt16, OpAccess.Read); AddMemory(flags, ref usedMemoryLocations, Register.SS, xsp, Register.None, 1, 1 * 2, MemorySize.UInt16, OpAccess.Read); AddMemory(flags, ref usedMemoryLocations, Register.SS, xsp, Register.None, 1, 2 * 2, MemorySize.UInt16, OpAccess.Read); - if ((flags & Flags.Is64Bit) != 0) { + if (instruction.CodeSize == CodeSize.Code64) { AddMemory(flags, ref usedMemoryLocations, Register.SS, xsp, Register.None, 1, 3 * 2, MemorySize.UInt16, OpAccess.Read); AddMemory(flags, ref usedMemoryLocations, Register.SS, xsp, Register.None, 1, 4 * 2, MemorySize.UInt16, OpAccess.Read); }