]> git.nega.tv - josh/narcissus/commitdiff
narcissus-maths: Remove unnecessary unsafe
authorJoshua Simmons <josh@nega.tv>
Sat, 4 Oct 2025 20:58:51 +0000 (22:58 +0200)
committerJoshua Simmons <josh@nega.tv>
Sat, 4 Oct 2025 21:05:23 +0000 (23:05 +0200)
engine/narcissus-maths/src/mat4.rs

index 104d36b86bd0797544ec0db050a1f3cd2ea6cedb..4fa7c755d1f609baf6eaf537da73c7cfbaf55d3c 100644 (file)
@@ -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`.