pub struct CallIntrinsicOp { /* private fields */ }Expand description
All LLVM intrinsic calls are represented by this Op. Same as MLIR’s llvm.call_intrinsic.
§Attribute(s):
Note: Only attributes defined directly as part of this operation are listed here. There may be others, not listed here, defined by interface implementations.
| Name | Static Name Identifier | Type |
|---|---|---|
llvm_intrinsic_name | ATTR_KEY_LLVM_INTRINSIC_NAME | StringAttr |
llvm_intrinsic_type | ATTR_KEY_LLVM_INTRINSIC_TYPE | TypeAttr |
llvm_intrinsic_fastmath_flags | ATTR_KEY_LLVM_INTRINSIC_FASTMATH_FLAGS | FastmathFlagsAttr |
Implementations§
Source§impl CallIntrinsicOp
impl CallIntrinsicOp
Sourcepub fn get_attr_llvm_intrinsic_name<'a>(
&self,
ctx: &'a Context,
) -> Option<Ref<'a, StringAttr>>
pub fn get_attr_llvm_intrinsic_name<'a>( &self, ctx: &'a Context, ) -> Option<Ref<'a, StringAttr>>
Get a Ref to the value of the attribute named llvm_intrinsic_name.
The Ref is a borrow of the containing Operation object.
Sourcepub fn set_attr_llvm_intrinsic_name(&self, ctx: &Context, value: StringAttr)
pub fn set_attr_llvm_intrinsic_name(&self, ctx: &Context, value: StringAttr)
Set the value of the attribute named llvm_intrinsic_name.
Sourcepub fn get_attr_llvm_intrinsic_type<'a>(
&self,
ctx: &'a Context,
) -> Option<Ref<'a, TypeAttr>>
pub fn get_attr_llvm_intrinsic_type<'a>( &self, ctx: &'a Context, ) -> Option<Ref<'a, TypeAttr>>
Get a Ref to the value of the attribute named llvm_intrinsic_type.
The Ref is a borrow of the containing Operation object.
Sourcepub fn set_attr_llvm_intrinsic_type(&self, ctx: &Context, value: TypeAttr)
pub fn set_attr_llvm_intrinsic_type(&self, ctx: &Context, value: TypeAttr)
Set the value of the attribute named llvm_intrinsic_type.
Sourcepub fn get_attr_llvm_intrinsic_fastmath_flags<'a>(
&self,
ctx: &'a Context,
) -> Option<Ref<'a, FastmathFlagsAttr>>
pub fn get_attr_llvm_intrinsic_fastmath_flags<'a>( &self, ctx: &'a Context, ) -> Option<Ref<'a, FastmathFlagsAttr>>
Get a Ref to the value of the attribute named llvm_intrinsic_fastmath_flags.
The Ref is a borrow of the containing Operation object.
Sourcepub fn set_attr_llvm_intrinsic_fastmath_flags(
&self,
ctx: &Context,
value: FastmathFlagsAttr,
)
pub fn set_attr_llvm_intrinsic_fastmath_flags( &self, ctx: &Context, value: FastmathFlagsAttr, )
Set the value of the attribute named llvm_intrinsic_fastmath_flags.
Source§impl CallIntrinsicOp
impl CallIntrinsicOp
Sourcepub fn new(
ctx: &mut Context,
intrinsic_name: StringAttr,
intrinsic_type: TypePtr<FuncType>,
operands: Vec<Value>,
) -> Self
pub fn new( ctx: &mut Context, intrinsic_name: StringAttr, intrinsic_type: TypePtr<FuncType>, operands: Vec<Value>, ) -> Self
Create a new CallIntrinsicOp.
Trait Implementations§
Source§impl Clone for CallIntrinsicOp
impl Clone for CallIntrinsicOp
Source§fn clone(&self) -> CallIntrinsicOp
fn clone(&self) -> CallIntrinsicOp
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Hash for CallIntrinsicOp
impl Hash for CallIntrinsicOp
Source§impl OneResultInterface for CallIntrinsicOp
impl OneResultInterface for CallIntrinsicOp
Source§impl Op for CallIntrinsicOp
impl Op for CallIntrinsicOp
Source§fn get_operation(&self) -> Ptr<Operation>
fn get_operation(&self) -> Ptr<Operation>
Source§fn get_opid_static() -> OpId
fn get_opid_static() -> OpId
Source§fn get_concrete_op_info() -> (fn(Ptr<Operation>) -> OpBox, TypeId)where
Self: Sized,
fn get_concrete_op_info() -> (fn(Ptr<Operation>) -> OpBox, TypeId)where
Self: Sized,
Source§impl Parsable for CallIntrinsicOp
impl Parsable for CallIntrinsicOp
Source§type Arg = Vec<(Identifier, Location)>
type Arg = Vec<(Identifier, Location)>
Source§fn parse<'a>(
state_stream: &mut StateStream<'a>,
results: Self::Arg,
) -> ParseResult<'a, Self::Parsed>
fn parse<'a>( state_stream: &mut StateStream<'a>, results: Self::Arg, ) -> ParseResult<'a, Self::Parsed>
into on [Parser::parse_stream] to get the final ParseResult.
Use state_stream.state as necessary.Source§fn parser<'a>(
arg: Self::Arg,
) -> Box<dyn Parser<Stream<Stream<Stream<Stream<IteratorStream<CharIterator<'a>>, SourcePosition>>>, State<'a>>, PartialState = (), Output = Self::Parsed> + 'a>
fn parser<'a>( arg: Self::Arg, ) -> Box<dyn Parser<Stream<Stream<Stream<Stream<IteratorStream<CharIterator<'a>>, SourcePosition>>>, State<'a>>, PartialState = (), Output = Self::Parsed> + 'a>
Source§impl PartialEq for CallIntrinsicOp
impl PartialEq for CallIntrinsicOp
Source§impl Printable for CallIntrinsicOp
impl Printable for CallIntrinsicOp
impl Copy for CallIntrinsicOp
impl Eq for CallIntrinsicOp
impl NResultsInterface<1> for CallIntrinsicOp
impl StructuralPartialEq for CallIntrinsicOp
Auto Trait Implementations§
impl Freeze for CallIntrinsicOp
impl !RefUnwindSafe for CallIntrinsicOp
impl Send for CallIntrinsicOp
impl Sync for CallIntrinsicOp
impl Unpin for CallIntrinsicOp
impl UnsafeUnpin for CallIntrinsicOp
impl !UnwindSafe for CallIntrinsicOp
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.