Skip to content

Commit c4f3d4b

Browse files
committed
Avoid slow array.as_slice_memory_order_mut()
1 parent 455cbec commit c4f3d4b

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

jix/src/array.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -802,9 +802,10 @@ impl<S: ArrayStorage> Array<S> {
802802
{
803803
let buf_strides = dim_arr(ndim, |dim| array.strides()[dim] as usize * itemsize);
804804
let buf = unsafe {
805-
cast_slice_mut::<MaybeUninit<S::Item>, u8>(
806-
array.as_slice_memory_order_mut().unwrap(),
807-
)
805+
cast_slice_mut::<MaybeUninit<S::Item>, u8>(std::slice::from_raw_parts_mut(
806+
array.as_mut_ptr(),
807+
array.len(),
808+
))
808809
};
809810
let mut out = unsafe { StridedBuf::from_slice_mut(buf, buf_strides.as_ref()) };
810811
self.to_ndarray_buf(index, context, Some(&mut out))?;

0 commit comments

Comments
 (0)