pub struct ScalableExtractOperation<'c> { /* private fields */ }
Expand description
A scalable.extract
operation. Extract subvector from scalable vector operation.
Takes rank-1 source vector and a position pos
within the source
vector, and extracts a subvector starting from that position.
The extraction position must be a multiple of the minimum size of the result vector. For the operation to be well defined, the destination vector must fit within the source vector from the specified position. Since the source vector is scalable and its runtime length is unknown, the validity of the operation can’t be verified nor guaranteed at compile time.
Example:
%1 = vector.scalable.extract %0[8] : vector<4xf32> from vector<[8]xf32>
%3 = vector.scalable.extract %2[0] : vector<[4]xf32> from vector<[8]xf32>
Invalid example:
%1 = vector.scalable.extract %0[5] : vector<4xf32> from vector<[16]xf32>
Implementations§
source§impl<'c> ScalableExtractOperation<'c>
impl<'c> ScalableExtractOperation<'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>
) -> ScalableExtractOperationBuilder<'c, Unset, Unset, Unset>
pub fn builder( context: &'c Context, location: Location<'c> ) -> ScalableExtractOperationBuilder<'c, Unset, Unset, Unset>
Creates a builder.
pub fn res(&self) -> Result<OperationResult<'c, '_>, Error>
pub fn source(&self) -> Result<Value<'c, '_>, Error>
pub fn pos(&self) -> Result<IntegerAttribute<'c>, Error>
pub fn set_pos(&mut self, value: IntegerAttribute<'c>)
Trait Implementations§
source§impl<'c> From<ScalableExtractOperation<'c>> for Operation<'c>
impl<'c> From<ScalableExtractOperation<'c>> for Operation<'c>
source§fn from(operation: ScalableExtractOperation<'c>) -> Self
fn from(operation: ScalableExtractOperation<'c>) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl<'c> RefUnwindSafe for ScalableExtractOperation<'c>
impl<'c> !Send for ScalableExtractOperation<'c>
impl<'c> !Sync for ScalableExtractOperation<'c>
impl<'c> Unpin for ScalableExtractOperation<'c>
impl<'c> UnwindSafe for ScalableExtractOperation<'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