pub enum RvInstruction {
    PhiPlaceholder {
        rd: VReg,
        options: Vec<(Location, Value)>,
    },
    Integer {
        rd: VReg,
        value: u64,
    },
    AluOp {
        op: RvAluOp,
        rd: VReg,
        rx: VReg,
        ry: VReg,
    },
    AluOpImm {
        op: RvAluOp,
        rd: VReg,
        rx: VReg,
        imm: i16,
    },
    Jal {
        rd: VReg,
        location: Location,
        clobbers: Vec<VReg>,
    },
    Bne {
        rx: VReg,
        ry: VReg,
        location: Location,
    },
    Ret,
    Load {
        rd: VReg,
        imm: i16,
        rx: VReg,
    },
    Store {
        rx: VReg,
        imm: i16,
        ry: VReg,
    },
}

Variants§

§

PhiPlaceholder

Fields

§rd: VReg
§options: Vec<(Location, Value)>
§

Integer

Fields

§rd: VReg
§value: u64
§

AluOp

Fields

§rd: VReg
§rx: VReg
§ry: VReg
§

AluOpImm

Fields

§rd: VReg
§rx: VReg
§imm: i16
§

Jal

Fields

§rd: VReg
§location: Location
§clobbers: Vec<VReg>
§

Bne

Fields

§rx: VReg
§ry: VReg
§location: Location
§

Ret

§

Load

Fields

§rd: VReg
§imm: i16
§rx: VReg
§

Store

Fields

§rx: VReg
§imm: i16
§ry: VReg

Trait Implementations§

Formats the value using the given formatter. Read more
Gets the registers available for selection by the register allocator.
Gets the registers that can be used as function arguments.
Collects the registers in an instruction for register allocation.
Applies the results of register allocation.
Performs transformations on the VCode that are mandatory after register allocation.
Transforms the given VCode into assembly written to a file.

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Converts the given value to a String. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.