pub enum MatmulReject {
NoLoopNest,
NotTripleNested,
NoAccumulatingStore,
NonAffineIndex,
NotGemmLayout,
}Expand description
Why a program is not a recognizable tile-matmul — a typed refusal, never a miscompile.
Variants§
NoLoopNest
No While loop at the top of the scanned region.
NotTripleNested
Fewer than three nested counted loops.
NoAccumulatingStore
No accumulating indexed store Set item _ of C to (item _ of C) + ….
NonAffineIndex
An index expression is not affine in the induction variables.
NotGemmLayout
The affine indices do not match the row-major GEMM layout (against the loop bounds).
Trait Implementations§
Source§impl Clone for MatmulReject
impl Clone for MatmulReject
Source§fn clone(&self) -> MatmulReject
fn clone(&self) -> MatmulReject
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MatmulReject
impl Debug for MatmulReject
Source§impl PartialEq for MatmulReject
impl PartialEq for MatmulReject
impl Eq for MatmulReject
impl StructuralPartialEq for MatmulReject
Auto Trait Implementations§
impl Freeze for MatmulReject
impl RefUnwindSafe for MatmulReject
impl Send for MatmulReject
impl Sync for MatmulReject
impl Unpin for MatmulReject
impl UnsafeUnpin for MatmulReject
impl UnwindSafe for MatmulReject
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
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>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<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>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> 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)
Convert
&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)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.