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
}
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 */
# 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"
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();
#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 */
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;