From: Joshua Simmons Date: Sat, 4 Oct 2025 20:58:51 +0000 (+0200) Subject: narcissus-maths: Remove unnecessary unsafe X-Git-Url: https://git.nega.tv//gitweb.cgi?a=commitdiff_plain;h=c0a12fcdfd7525cd70c329f50a37eb371211841b;p=josh%2Fnarcissus narcissus-maths: Remove unnecessary unsafe --- diff --git a/engine/narcissus-maths/src/mat4.rs b/engine/narcissus-maths/src/mat4.rs index 104d36b..4fa7c75 100644 --- a/engine/narcissus-maths/src/mat4.rs +++ b/engine/narcissus-maths/src/mat4.rs @@ -265,12 +265,10 @@ impl Mat4 { #[inline] #[target_feature(enable = "sse2")] unsafe fn transpose_sse2(self) -> Mat4 { - unsafe { - use std::arch::x86_64::_MM_TRANSPOSE4_PS; - let [mut row0, mut row1, mut row2, mut row3] = self.as_m128_array(); - _MM_TRANSPOSE4_PS(&mut row0, &mut row1, &mut row2, &mut row3); - Mat4::from_m128_array([row0, row1, row2, row3]) - } + use std::arch::x86_64::_MM_TRANSPOSE4_PS; + let [mut row0, mut row1, mut row2, mut row3] = self.as_m128_array(); + _MM_TRANSPOSE4_PS(&mut row0, &mut row1, &mut row2, &mut row3); + Mat4::from_m128_array([row0, row1, row2, row3]) } /// Returns the transpose of `self`. @@ -340,19 +338,17 @@ impl Mat4 { #[inline] #[target_feature(enable = "sse4.1")] unsafe fn transform_vec4_sse41(&self, vec: Vec4) -> Vec4 { - unsafe { - use std::arch::x86_64::{_mm_hadd_ps, _mm_mul_ps}; + use std::arch::x86_64::{_mm_hadd_ps, _mm_mul_ps}; - let vec = vec.into(); - let rows = self.as_m128_array(); + let vec = vec.into(); + let rows = self.as_m128_array(); - let values = _mm_hadd_ps( - _mm_hadd_ps(_mm_mul_ps(rows[0], vec), _mm_mul_ps(rows[1], vec)), - _mm_hadd_ps(_mm_mul_ps(rows[2], vec), _mm_mul_ps(rows[3], vec)), - ); + let values = _mm_hadd_ps( + _mm_hadd_ps(_mm_mul_ps(rows[0], vec), _mm_mul_ps(rows[1], vec)), + _mm_hadd_ps(_mm_mul_ps(rows[2], vec), _mm_mul_ps(rows[3], vec)), + ); - values.into() - } + values.into() } /// Transforms the given [`Vec4`] `vec` by `self`.