diff src/cpu.c @ 34:8b5e0974fd41

Backed out changeset 92156fe32755
author Paper <paper@tflc.us>
date Fri, 25 Apr 2025 17:40:46 -0400
parents bf6ad516f1e6
children
line wrap: on
line diff
--- a/src/cpu.c	Fri Apr 25 17:40:42 2025 -0400
+++ b/src/cpu.c	Fri Apr 25 17:40:46 2025 -0400
@@ -44,7 +44,6 @@
  * 3. This notice may not be removed or altered from any source distribution.
 */
 
-#include "vec/vec.h"
 #include "vec/cpu.h"
 
 #if defined(__MACOSX__) && (defined(__ppc__) || defined(__ppc64__))
@@ -56,7 +55,7 @@
 #elif defined(__FreeBSD__) && defined(__powerpc__)
 # include <machine/cpu.h>
 # include <sys/auxv.h>
-#elif defined(VEC_COMPILER_HAS_ALTIVEC)
+#elif defined(__ALTIVEC__)
 # include <signal.h>
 # include <setjmp.h>
 #endif
@@ -311,8 +310,8 @@
 	void (*handler)(int sig);
 	handler = signal(SIGILL, vec_CPU_illegal_instruction);
 	if (!setjmp(vec_jmpbuf)) {
-		__asm__ __volatile__("mtspr 256, %0\n\t"
-		    "vand %%v0, %%v0, %%v0" ::"r"(-1));
+		vector unsigned char vec;
+		vec_and(vec, vec);
 		altivec = 1;
 	}
 	signal(SIGILL, handler);
@@ -495,4 +494,4 @@
 			vec_CPU_features |= VEC_CPU_HAS_NEON;
 	}
 	return vec_CPU_features;
-}
+}
\ No newline at end of file