pub struct FlatTransposeOperation<'c> { /* private fields */ }Expand description
A flat_transpose operation. Vector matrix transposition on flattened 1-D MLIR vectors.
This is the counterpart of llvm.matrix.transpose in MLIR. It serves the purposes of more progressive lowering and localized type conversion. Higher levels typically lower matrix tranpositions into ‘vector.transpose’ operations. Subsequent rewriting rule progressively lower these operations into ‘vector.flat_transpose’ operations to bring the operations closer to the hardware ISA.
The vector.flat_transpose op treats the 1-D input matrix as
a 2-D matrix with
Also see:
http://llvm.org/docs/LangRef.html#llvm-matrix-transpose-intrinsic
Example:
%1 = vector.flat_transpose %0 {columns = 4 : i32, rows = 4 : i32}
: vector<16xf32> -> vector<16xf32>
Implementations§
source§impl<'c> FlatTransposeOperation<'c>
impl<'c> FlatTransposeOperation<'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>
) -> FlatTransposeOperationBuilder<'c, Unset, Unset, Unset, Unset>
pub fn builder( context: &'c Context, location: Location<'c> ) -> FlatTransposeOperationBuilder<'c, Unset, Unset, Unset, Unset>
Creates a builder.