URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 149 |
Rev 154 |
/* A runtime check for AltiVec capability. */
|
/* A runtime check for AltiVec capability. */
|
/* Contributed by Ziemowit Laski <zlaski@apple.com> */
|
/* Contributed by Ziemowit Laski <zlaski@apple.com> */
|
|
|
#include <signal.h>
|
#include <signal.h>
|
extern
|
extern
|
#ifdef __cplusplus
|
#ifdef __cplusplus
|
"C"
|
"C"
|
#endif
|
#endif
|
void exit(int);
|
void exit(int);
|
|
|
void
|
void
|
sig_ill_handler (int sig)
|
sig_ill_handler (int sig)
|
{
|
{
|
exit (0);
|
exit (0);
|
}
|
}
|
|
|
void altivec_check(void) {
|
void altivec_check(void) {
|
|
|
/* Exit on systems without AltiVec. */
|
/* Exit on systems without AltiVec. */
|
signal (SIGILL, sig_ill_handler);
|
signal (SIGILL, sig_ill_handler);
|
#ifdef __MACH__
|
#ifdef __MACH__
|
asm volatile ("vor v0,v0,v0");
|
asm volatile ("vor v0,v0,v0");
|
#else
|
#else
|
asm volatile ("vor 0,0,0");
|
asm volatile ("vor 0,0,0");
|
#endif
|
#endif
|
signal (SIGILL, SIG_DFL);
|
signal (SIGILL, SIG_DFL);
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.