@@ -512,16 +512,15 @@ end
512512end
513513
514514#= ============================================================================
515- Matmul
515+ Matrix multiplication
516516=============================================================================#
517517
518518# Matrix multiply-accumulate: muladd(a, b, acc) = a * b + acc
519- # Uses tensor cores when available.
520519@inline Base. muladd (a:: Tile{T1, SA} , b:: Tile{T2, SB} , acc:: Tile{T3, SC} ) where {T1, T2, T3, SA, SB, SC} =
521520 Intrinsics. mma (a, b, acc)
522521
523- # Internal matmul helper (used by * operator )
524- @inline function matmul (a:: Tile{T1, SA} , b:: Tile{T2, SB} ) where {T1, T2, SA, SB}
522+ # Matrix multiplication (A * B like Julia arrays )
523+ @inline function Base.:( * ) (a:: Tile{T1, SA} , b:: Tile{T2, SB} ) where {T1, T2, SA, SB}
525524 _matmul (a, b, Val (length (SA)))
526525end
527526
@@ -588,13 +587,3 @@ br = ct.extract(tile, (2, 2), (4, 4)) # Bottom-right (rows 5-8, cols 5-8)
588587@inline extract (tile:: Tile{T} , :: Val{Index} , :: Val{Shape} ) where {T, Index, Shape} =
589588 Intrinsics. extract (tile, Val (map (i -> i - 1 , Index)), Val (Shape))
590589
591- #= ============================================================================
592- Matrix Multiplication
593- =============================================================================#
594-
595- # Matrix multiplication (A * B like Julia arrays)
596- @inline Base.:(* )(a:: Tile , b:: Tile ) = matmul (a, b)
597-
598- # Base overloads for Int32 (special intrinsics)
599- @noinline Base. rem (a:: Int32 , b:: Int32 ) = Base. inferencebarrier (zero (Int32))
600- @noinline Base. min (a:: Int32 , b:: Int32 ) = Base. inferencebarrier (zero (Int32))
0 commit comments