pub struct AffineLoadOperation<'c> { /* private fields */ }
Expand description
A load
operation. Affine load operation.
Syntax:
operation ::= ssa-id `=` `affine.load` ssa-use `[` multi-dim-affine-map-of-ssa-ids `]` `:` memref-type
The affine.load
op reads an element from a memref, where the index
for each memref dimension is an affine expression of loop induction
variables and symbols. The output of affine.load
is a new value with the
same type as the elements of the memref. An affine expression of loop IVs
and symbols must be specified for each dimension of the memref. The keyword
symbol
can be used to indicate SSA identifiers which are symbolic.
Example 1:
%1 = affine.load %0[%i0 + 3, %i1 + 7] : memref<100x100xf32>
Example 2: Uses symbol
keyword for symbols %n
and %m
.
%1 = affine.load %0[%i0 + symbol(%n), %i1 + symbol(%m)] : memref<100x100xf32>
Implementations§
source§impl<'c> AffineLoadOperation<'c>
impl<'c> AffineLoadOperation<'c>
sourcepub fn as_operation(&self) -> &Operation<'c>
pub fn as_operation(&self) -> &Operation<'c>
Returns a generic operation.
sourcepub fn builder(
context: &'c Context,
location: Location<'c>
) -> AffineLoadOperationBuilder<'c, Unset, Unset, Unset>
pub fn builder( context: &'c Context, location: Location<'c> ) -> AffineLoadOperationBuilder<'c, Unset, Unset, Unset>
Creates a builder.
pub fn result(&self) -> Result<OperationResult<'c, '_>, Error>
pub fn memref(&self) -> Result<Value<'c, '_>, Error>
pub fn indices(&self) -> impl Iterator<Item = Value<'c, '_>>
Trait Implementations§
source§impl<'c> From<AffineLoadOperation<'c>> for Operation<'c>
impl<'c> From<AffineLoadOperation<'c>> for Operation<'c>
source§fn from(operation: AffineLoadOperation<'c>) -> Self
fn from(operation: AffineLoadOperation<'c>) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl<'c> RefUnwindSafe for AffineLoadOperation<'c>
impl<'c> !Send for AffineLoadOperation<'c>
impl<'c> !Sync for AffineLoadOperation<'c>
impl<'c> Unpin for AffineLoadOperation<'c>
impl<'c> UnwindSafe for AffineLoadOperation<'c>
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