Mercurial > vec
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