/* Copyright (C) 2018 de4dot@gmail.com This file is part of Iced. Iced is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. Iced is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with Iced. If not, see . */ namespace Iced.Intel { /// /// Instruction operand kind /// public enum OpKind { /// /// A register (). /// /// This operand kind uses , , /// or depending on operand number. /// See also . /// Register = 0,// Code assumes this is 0 /// /// Near 16-bit branch. This operand kind uses /// NearBranch16, /// /// Near 32-bit branch. This operand kind uses /// NearBranch32, /// /// Near 64-bit branch. This operand kind uses /// NearBranch64, /// /// Far 16-bit branch. This operand kind uses and /// FarBranch16, /// /// Far 32-bit branch. This operand kind uses and /// FarBranch32, /// /// 8-bit constant. This operand kind uses /// Immediate8, /// /// 8-bit constant used by the enter, extrq, insertq instructions. This operand kind uses /// Immediate8_2nd, /// /// 16-bit constant. This operand kind uses /// Immediate16, /// /// 32-bit constant. This operand kind uses /// Immediate32, /// /// 64-bit constant. This operand kind uses /// Immediate64, /// /// An 8-bit value sign extended to 16 bits. This operand kind uses /// Immediate8to16, /// /// An 8-bit value sign extended to 32 bits. This operand kind uses /// Immediate8to32, /// /// An 8-bit value sign extended to 64 bits. This operand kind uses /// Immediate8to64, /// /// A 32-bit value sign extended to 64 bits. This operand kind uses /// Immediate32to64, /// /// seg:[si]. This operand kind uses , , /// MemorySegSI, /// /// seg:[esi]. This operand kind uses , , /// MemorySegESI, /// /// seg:[rsi]. This operand kind uses , , /// MemorySegRSI, /// /// seg:[di]. This operand kind uses , , /// MemorySegDI, /// /// seg:[edi]. This operand kind uses , , /// MemorySegEDI, /// /// seg:[rdi]. This operand kind uses , , /// MemorySegRDI, /// /// es:[di]. This operand kind uses /// MemoryESDI, /// /// es:[edi]. This operand kind uses /// MemoryESEDI, /// /// es:[rdi]. This operand kind uses /// MemoryESRDI, /// /// 64-bit offset [xxxxxxxxxxxxxxxx]. This operand kind uses , /// , , /// Memory64, /// /// Memory operand. /// /// This operand kind uses , , /// , , /// , , , /// /// Memory, } }