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.