Evas: asm detection with eina if sigaction or siglongjmp are not available. Only mmx, sse or sse3

SVN revision: 77958
This commit is contained in:
Vincent Torri 2012-10-13 14:07:58 +00:00
parent 82a183ffde
commit 2c4cd5909a
1 changed files with 10 additions and 0 deletions

View File

@ -142,6 +142,16 @@ evas_common_cpu_feature_test(void (*feature)(void))
sigaction(SIGSEGV, &oact2, NULL);
return enabled;
#else
Eina_Cpu_Features f;
f = eina_cpu_features_get();
if (feature == evas_common_cpu_mmx_test)
return (f & EINA_CPU_MMX) == EINA_CPU_MMX;
/* no mmx2 support in eina */
if (feature == evas_common_cpu_sse_test)
return (f & EINA_CPU_SSE) == EINA_CPU_SSE;
if (feature == evas_common_cpu_sse3_test)
return (f & EINA_CPU_SSE3) == EINA_CPU_SSE3;
return 0;
#endif
}