pub struct InstData {
pub opcode: Opcode,
pub operands: OperandList,
pub imm: Option<ImmRef>,
pub mem: Option<MemRef>,
pub symbol: Option<Symbol>,
}Expand description
One instruction.
Fields§
§opcode: OpcodeWhich instruction this is.
operands: OperandListIts operands, defs first and then uses, with the registers a memory operand names last.
The order is what the printer and the parser agree on, and crate::InstBuilder is
what keeps it.
imm: Option<ImmRef>Its immediate, if it has one.
mem: Option<MemRef>Its memory operand, if it has one.
symbol: Option<Symbol>The symbol it names, which is the callee of a direct call and the target of a direct jump to another function.
Implementations§
Trait Implementations§
impl Copy for InstData
impl Eq for InstData
impl StructuralPartialEq for InstData
Auto Trait Implementations§
impl Freeze for InstData
impl RefUnwindSafe for InstData
impl Send for InstData
impl Sync for InstData
impl Unpin for InstData
impl UnsafeUnpin for InstData
impl UnwindSafe for InstData
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more