you know.... i was reviewing this patch this morning and i found
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 30 Sep 2011 03:29:03 +0000 (03:29 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 30 Sep 2011 03:29:03 +0000 (03:29 +0000)
several problems with it... but SOMEONE... (lucas) committed it
without even so much as replying to the list saying he was going to...
:)

git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@63705 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/engines/common/evas_cpu.c
src/lib/engines/common/evas_op_blend_main_.c
src/lib/include/evas_blend_ops.h

index 65a9018..0ae7379 100644 (file)
@@ -68,9 +68,9 @@ void
 evas_common_cpu_sse3_test(void)
 {
 #ifdef BUILD_SSE3
-   int data[4];
+   int data[4]; 
 
-   __m128i val = _mm_lddqu_si128((__m128i *)data);
+   _mm_lddqu_si128((__m128i *)data);
 #endif
 }
 
@@ -170,10 +170,10 @@ evas_common_cpu_init(void)
      cpu_feature_mask &= ~CPU_FEATURE_SSE;
 #ifdef BUILD_SSE3
    cpu_feature_mask |= CPU_FEATURE_SSE3 *
-     evas_common_cpu_feature_test(evas_common_cpu_sse3_test);
+     evas_common_cpu_feature_test(evas_common_cpu_sse3_test); 
    evas_common_cpu_end_opt();
    if(getenv("EVAS_CPU_NO_SSE3"))
-     cpu_feature_mask &= ~CPU_FEATURE_SSE3;
+     cpu_feature_mask &= ~CPU_FEATURE_SSE3; 
 #endif /* BUILD_SSE3 */
 #endif /* BUILD_SSE */
 #endif /* BUILD_MMX */
index a56cb3d..d358d12 100644 (file)
@@ -84,6 +84,9 @@ evas_common_gfx_compositor_blend_rel_get(void)
 # include "./evas_op_blend/op_blend_mask_color_i386.c"
 //# include "./evas_op_blend/op_blend_pixel_mask_color_i386.c"
 
+#ifdef BUILD_SSE3
+static __m128i A_MASK_SSE3;
+#endif
 # include "./evas_op_blend/op_blend_pixel_sse3.c"
 # include "./evas_op_blend/op_blend_color_sse3.c"
 # include "./evas_op_blend/op_blend_pixel_color_sse3.c"
@@ -410,17 +413,17 @@ op_blend_rel_init(void)
    memset(op_blend_rel_span_funcs, 0, sizeof(op_blend_rel_span_funcs));
    memset(op_blend_rel_pt_funcs, 0, sizeof(op_blend_rel_pt_funcs));
 #ifdef BUILD_SSE3
-   init_blend_rel_pixel_span_funcs_c();
-   init_blend_rel_pixel_color_span_funcs_c();
-   init_blend_rel_pixel_mask_span_funcs_c();
-   init_blend_rel_color_span_funcs_c();
-   init_blend_rel_mask_color_span_funcs_c();
-
-   init_blend_rel_pixel_pt_funcs_c();
-   init_blend_rel_pixel_color_pt_funcs_c();
-   init_blend_rel_pixel_mask_pt_funcs_c();
-   init_blend_rel_color_pt_funcs_c();
-   init_blend_rel_mask_color_pt_funcs_c();
+   init_blend_rel_pixel_span_funcs_sse3();
+   init_blend_rel_pixel_color_span_funcs_sse3();
+   init_blend_rel_pixel_mask_span_funcs_sse3();
+   init_blend_rel_color_span_funcs_sse3();
+   init_blend_rel_mask_color_span_funcs_sse3();
+
+   init_blend_rel_pixel_pt_funcs_sse3();
+   init_blend_rel_pixel_color_pt_funcs_sse3();
+   init_blend_rel_pixel_mask_pt_funcs_sse3();
+   init_blend_rel_color_pt_funcs_sse3();
+   init_blend_rel_mask_color_pt_funcs_sse3();
 #endif
 #ifdef BUILD_MMX
    init_blend_rel_pixel_span_funcs_mmx();
index 0c27316..c2df543 100644 (file)
@@ -9,6 +9,15 @@
 #include <immintrin.h>
 #endif
 
+#ifndef always_inline
+#if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0)
+#    define always_inline __attribute__((always_inline)) inline
+#else
+#    define always_inline inline
+#endif
+#endif
+
+
 /* src pixel flags: */
 
 /* pixels none */
@@ -191,7 +200,7 @@ static __m128i GA_MASK_SSE3;
 static __m128i RB_MASK_SSE3;
 static __m128i SYM4_MASK_SSE3;
 static __m128i RGB_MASK_SSE3;
-static __m128i A_MASK_SSE3;
+//static __m128i A_MASK_SSE3;
 
 static __m128i ALPHA_SSE3;