Struct cranelift_codegen::ir::AbiParam [−][src]
pub struct AbiParam {
pub value_type: Type,
pub purpose: ArgumentPurpose,
pub extension: ArgumentExtension,
pub location: ArgumentLoc,
pub legalized_to_pointer: bool,
}Function parameter or return value descriptor.
This describes the value type being passed to or from a function along with flags that affect how the argument is passed.
Fields
value_type: TypeType of the argument value.
purpose: ArgumentPurposeSpecial purpose of argument, or Normal.
extension: ArgumentExtensionMethod for extending argument to a full register.
location: ArgumentLocABI-specific location of this argument, or Unassigned for arguments that have not yet
been legalized.
legalized_to_pointer: boolWas the argument converted to pointer during legalization?
Implementations
impl AbiParam[src]
impl AbiParam[src]pub fn new(vt: Type) -> Self[src]
Create a parameter with default flags.
pub fn special(vt: Type, purpose: ArgumentPurpose) -> Self[src]
Create a special-purpose parameter that is not (yet) bound to a specific register.
pub fn special_reg(vt: Type, purpose: ArgumentPurpose, regunit: RegUnit) -> Self[src]
Create a parameter for a special-purpose register.
pub fn uext(self) -> Self[src]
Convert self to a parameter with the uext flag set.
pub fn sext(self) -> Self[src]
Convert self to a parameter type with the sext flag set.
pub fn display<'a, R: Into<Option<&'a RegInfo>>>(
&'a self,
regs: R
) -> DisplayAbiParam<'a>[src]
&'a self,
regs: R
) -> DisplayAbiParam<'a>
Return an object that can display self with correct register names.
Trait Implementations
impl<'de> Deserialize<'de> for AbiParam[src]
impl<'de> Deserialize<'de> for AbiParam[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>, [src]
__D: Deserializer<'de>,
impl Copy for AbiParam[src]
impl Eq for AbiParam[src]
impl StructuralEq for AbiParam[src]
impl StructuralPartialEq for AbiParam[src]
Auto Trait Implementations
impl RefUnwindSafe for AbiParam
impl Send for AbiParam
impl Sync for AbiParam
impl Unpin for AbiParam
impl UnwindSafe for AbiParam
Blanket Implementations
impl<T> CallHasher for T where
T: Hash, [src]
impl<T> CallHasher for T where
T: Hash, [src]impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized, [src]
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized, [src]pub fn equivalent(&self, key: &K) -> bool[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>, [src]
T: for<'de> Deserialize<'de>,