You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(int64): add UnmanagedSpan overloads and fix SimdMatMul
**SimdMatMul.cs**
- Replaced slow scalar fallback for large arrays with UnmanagedSpan.Clear()
- Before: for loop clearing one element at a time when outputSize > int.MaxValue
- After: vectorized UnmanagedSpan.Clear() for all sizes
**IArraySlice.cs**
- Added: `void CopyTo<T>(UnmanagedSpan<T> destination) where T : unmanaged`
**ArraySlice<T>.cs**
- Added: constructor `ArraySlice(UnmanagedMemoryBlock<T>, UnmanagedSpan<T>)`
- Added: `bool TryCopyTo(UnmanagedSpan<T> destination)`
- Added: `void CopyTo(UnmanagedSpan<T> destination)`
- Added: `void CopyTo(UnmanagedSpan<T> destination, long sourceOffset)`
- Added: `void CopyTo(UnmanagedSpan<T> destination, long sourceOffset, long sourceLength)`
- Added: explicit interface `IArraySlice.CopyTo<T1>(UnmanagedSpan<T1> destination)`
All overloads support long indexing for arrays exceeding int.MaxValue elements.
0 commit comments