summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChunEon Park <hermet@hermet.pe.kr>2014-03-22 17:24:20 +0900
committerChunEon Park <hermet@hermet.pe.kr>2014-03-22 17:25:59 +0900
commit4de2059d41e3e99efa4ab8399994dbd8f46fd67b (patch)
treeafdd27b0091ef4862f2038d146972d20e5009f98 /src
parentf3d5cee0e4260c5b7287eef37fba687551b4d6ed (diff)
evas/common - initialize only the available blend stuff that cpu is supporting.
Diffstat (limited to 'src')
-rw-r--r--src/lib/evas/common/evas_op_add_main_.c25
-rw-r--r--src/lib/evas/common/evas_op_copy_main_.c50
-rw-r--r--src/lib/evas/common/evas_op_mask_main_.c25
-rw-r--r--src/lib/evas/common/evas_op_mul_main_.c25
-rw-r--r--src/lib/evas/common/evas_op_sub_main_.c25
5 files changed, 84 insertions, 66 deletions
diff --git a/src/lib/evas/common/evas_op_add_main_.c b/src/lib/evas/common/evas_op_add_main_.c
index 294f1d9..1a96380 100644
--- a/src/lib/evas/common/evas_op_add_main_.c
+++ b/src/lib/evas/common/evas_op_add_main_.c
@@ -88,17 +88,20 @@ op_add_init(void)
88 memset(op_add_span_funcs, 0, sizeof(op_add_span_funcs)); 88 memset(op_add_span_funcs, 0, sizeof(op_add_span_funcs));
89 memset(op_add_pt_funcs, 0, sizeof(op_add_pt_funcs)); 89 memset(op_add_pt_funcs, 0, sizeof(op_add_pt_funcs));
90#ifdef BUILD_MMX 90#ifdef BUILD_MMX
91 init_add_pixel_span_funcs_mmx(); 91 if (evas_common_cpu_has_feature(CPU_FEATURE_MMX))
92 init_add_pixel_color_span_funcs_mmx(); 92 {
93 init_add_pixel_mask_span_funcs_mmx(); 93 init_add_pixel_span_funcs_mmx();
94 init_add_color_span_funcs_mmx(); 94 init_add_pixel_color_span_funcs_mmx();
95 init_add_mask_color_span_funcs_mmx(); 95 init_add_pixel_mask_span_funcs_mmx();
96 96 init_add_color_span_funcs_mmx();
97 init_add_pixel_pt_funcs_mmx(); 97 init_add_mask_color_span_funcs_mmx();
98 init_add_pixel_color_pt_funcs_mmx(); 98
99 init_add_pixel_mask_pt_funcs_mmx(); 99 init_add_pixel_pt_funcs_mmx();
100 init_add_color_pt_funcs_mmx(); 100 init_add_pixel_color_pt_funcs_mmx();
101 init_add_mask_color_pt_funcs_mmx(); 101 init_add_pixel_mask_pt_funcs_mmx();
102 init_add_color_pt_funcs_mmx();
103 init_add_mask_color_pt_funcs_mmx();
104 }
102#endif 105#endif
103 init_add_pixel_span_funcs_c(); 106 init_add_pixel_span_funcs_c();
104 init_add_pixel_color_span_funcs_c(); 107 init_add_pixel_color_span_funcs_c();
diff --git a/src/lib/evas/common/evas_op_copy_main_.c b/src/lib/evas/common/evas_op_copy_main_.c
index 6e3881d..9c48559 100644
--- a/src/lib/evas/common/evas_op_copy_main_.c
+++ b/src/lib/evas/common/evas_op_copy_main_.c
@@ -101,30 +101,36 @@ op_copy_init(void)
101 memset(op_copy_span_funcs, 0, sizeof(op_copy_span_funcs)); 101 memset(op_copy_span_funcs, 0, sizeof(op_copy_span_funcs));
102 memset(op_copy_pt_funcs, 0, sizeof(op_copy_pt_funcs)); 102 memset(op_copy_pt_funcs, 0, sizeof(op_copy_pt_funcs));
103#ifdef BUILD_MMX 103#ifdef BUILD_MMX
104 init_copy_pixel_span_funcs_mmx(); 104 if (evas_common_cpu_has_feature(CPU_FEATURE_MMX))
105 init_copy_pixel_color_span_funcs_mmx(); 105 {
106 init_copy_pixel_mask_span_funcs_mmx(); 106 init_copy_pixel_span_funcs_mmx();
107 init_copy_color_span_funcs_mmx(); 107 init_copy_pixel_color_span_funcs_mmx();
108 init_copy_mask_color_span_funcs_mmx(); 108 init_copy_pixel_mask_span_funcs_mmx();
109 109 init_copy_color_span_funcs_mmx();
110 init_copy_pixel_pt_funcs_mmx(); 110 init_copy_mask_color_span_funcs_mmx();
111 init_copy_pixel_color_pt_funcs_mmx(); 111
112 init_copy_pixel_mask_pt_funcs_mmx(); 112 init_copy_pixel_pt_funcs_mmx();
113 init_copy_color_pt_funcs_mmx(); 113 init_copy_pixel_color_pt_funcs_mmx();
114 init_copy_mask_color_pt_funcs_mmx(); 114 init_copy_pixel_mask_pt_funcs_mmx();
115 init_copy_color_pt_funcs_mmx();
116 init_copy_mask_color_pt_funcs_mmx();
117 }
115#endif 118#endif
116#ifdef BUILD_NEON 119#ifdef BUILD_NEON
117 init_copy_pixel_span_funcs_neon(); 120 if (evas_common_cpu_has_feature(CPU_FEATURE_NEON))
118 init_copy_pixel_color_span_funcs_neon(); 121 {
119 init_copy_pixel_mask_span_funcs_neon(); 122 init_copy_pixel_span_funcs_neon();
120 init_copy_color_span_funcs_neon(); 123 init_copy_pixel_color_span_funcs_neon();
121 init_copy_mask_color_span_funcs_neon(); 124 init_copy_pixel_mask_span_funcs_neon();
122 125 init_copy_color_span_funcs_neon();
123 init_copy_pixel_pt_funcs_neon(); 126 init_copy_mask_color_span_funcs_neon();
124 init_copy_pixel_color_pt_funcs_neon(); 127
125 init_copy_pixel_mask_pt_funcs_neon(); 128 init_copy_pixel_pt_funcs_neon();
126 init_copy_color_pt_funcs_neon(); 129 init_copy_pixel_color_pt_funcs_neon();
127 init_copy_mask_color_pt_funcs_neon(); 130 init_copy_pixel_mask_pt_funcs_neon();
131 init_copy_color_pt_funcs_neon();
132 init_copy_mask_color_pt_funcs_neon();
133 }
128#endif 134#endif
129 init_copy_pixel_span_funcs_c(); 135 init_copy_pixel_span_funcs_c();
130 init_copy_pixel_color_span_funcs_c(); 136 init_copy_pixel_color_span_funcs_c();
diff --git a/src/lib/evas/common/evas_op_mask_main_.c b/src/lib/evas/common/evas_op_mask_main_.c
index 55a5d95..8810dc9 100644
--- a/src/lib/evas/common/evas_op_mask_main_.c
+++ b/src/lib/evas/common/evas_op_mask_main_.c
@@ -56,17 +56,20 @@ op_mask_init(void)
56 memset(op_mask_span_funcs, 0, sizeof(op_mask_span_funcs)); 56 memset(op_mask_span_funcs, 0, sizeof(op_mask_span_funcs));
57 memset(op_mask_pt_funcs, 0, sizeof(op_mask_pt_funcs)); 57 memset(op_mask_pt_funcs, 0, sizeof(op_mask_pt_funcs));
58#ifdef BUILD_MMX 58#ifdef BUILD_MMX
59 init_mask_pixel_span_funcs_mmx(); 59 if (evas_common_cpu_has_feature(CPU_FEATURE_MMX))
60 init_mask_pixel_color_span_funcs_mmx(); 60 {
61 init_mask_pixel_mask_span_funcs_mmx(); 61 init_mask_pixel_span_funcs_mmx();
62 init_mask_color_span_funcs_mmx(); 62 init_mask_pixel_color_span_funcs_mmx();
63 init_mask_mask_color_span_funcs_mmx(); 63 init_mask_pixel_mask_span_funcs_mmx();
64 64 init_mask_color_span_funcs_mmx();
65 init_mask_pixel_pt_funcs_mmx(); 65 init_mask_mask_color_span_funcs_mmx();
66 init_mask_pixel_color_pt_funcs_mmx(); 66
67 init_mask_pixel_mask_pt_funcs_mmx(); 67 init_mask_pixel_pt_funcs_mmx();
68 init_mask_color_pt_funcs_mmx(); 68 init_mask_pixel_color_pt_funcs_mmx();
69 init_mask_mask_color_pt_funcs_mmx(); 69 init_mask_pixel_mask_pt_funcs_mmx();
70 init_mask_color_pt_funcs_mmx();
71 init_mask_mask_color_pt_funcs_mmx();
72 }
70#endif 73#endif
71 init_mask_pixel_span_funcs_c(); 74 init_mask_pixel_span_funcs_c();
72 init_mask_pixel_color_span_funcs_c(); 75 init_mask_pixel_color_span_funcs_c();
diff --git a/src/lib/evas/common/evas_op_mul_main_.c b/src/lib/evas/common/evas_op_mul_main_.c
index 222062e..7c15807 100644
--- a/src/lib/evas/common/evas_op_mul_main_.c
+++ b/src/lib/evas/common/evas_op_mul_main_.c
@@ -55,17 +55,20 @@ op_mul_init(void)
55 memset(op_mul_span_funcs, 0, sizeof(op_mul_span_funcs)); 55 memset(op_mul_span_funcs, 0, sizeof(op_mul_span_funcs));
56 memset(op_mul_pt_funcs, 0, sizeof(op_mul_pt_funcs)); 56 memset(op_mul_pt_funcs, 0, sizeof(op_mul_pt_funcs));
57#ifdef BUILD_MMX 57#ifdef BUILD_MMX
58 init_mul_pixel_span_funcs_mmx(); 58 if (evas_common_cpu_has_feature(CPU_FEATURE_MMX))
59 init_mul_pixel_color_span_funcs_mmx(); 59 {
60 init_mul_pixel_mask_span_funcs_mmx(); 60 init_mul_pixel_span_funcs_mmx();
61 init_mul_color_span_funcs_mmx(); 61 init_mul_pixel_color_span_funcs_mmx();
62 init_mul_mask_color_span_funcs_mmx(); 62 init_mul_pixel_mask_span_funcs_mmx();
63 63 init_mul_color_span_funcs_mmx();
64 init_mul_pixel_pt_funcs_mmx(); 64 init_mul_mask_color_span_funcs_mmx();
65 init_mul_pixel_color_pt_funcs_mmx(); 65
66 init_mul_pixel_mask_pt_funcs_mmx(); 66 init_mul_pixel_pt_funcs_mmx();
67 init_mul_color_pt_funcs_mmx(); 67 init_mul_pixel_color_pt_funcs_mmx();
68 init_mul_mask_color_pt_funcs_mmx(); 68 init_mul_pixel_mask_pt_funcs_mmx();
69 init_mul_color_pt_funcs_mmx();
70 init_mul_mask_color_pt_funcs_mmx();
71 }
69#endif 72#endif
70 init_mul_pixel_span_funcs_c(); 73 init_mul_pixel_span_funcs_c();
71 init_mul_pixel_color_span_funcs_c(); 74 init_mul_pixel_color_span_funcs_c();
diff --git a/src/lib/evas/common/evas_op_sub_main_.c b/src/lib/evas/common/evas_op_sub_main_.c
index 02bfdbd..5045a12 100644
--- a/src/lib/evas/common/evas_op_sub_main_.c
+++ b/src/lib/evas/common/evas_op_sub_main_.c
@@ -89,17 +89,20 @@ op_sub_init(void)
89 memset(op_sub_span_funcs, 0, sizeof(op_sub_span_funcs)); 89 memset(op_sub_span_funcs, 0, sizeof(op_sub_span_funcs));
90 memset(op_sub_pt_funcs, 0, sizeof(op_sub_pt_funcs)); 90 memset(op_sub_pt_funcs, 0, sizeof(op_sub_pt_funcs));
91#ifdef BUILD_MMX 91#ifdef BUILD_MMX
92 init_sub_pixel_span_funcs_mmx(); 92 if (evas_common_cpu_has_feature(CPU_FEATURE_MMX))
93 init_sub_pixel_color_span_funcs_mmx(); 93 {
94 init_sub_pixel_mask_span_funcs_mmx(); 94 init_sub_pixel_span_funcs_mmx();
95 init_sub_color_span_funcs_mmx(); 95 init_sub_pixel_color_span_funcs_mmx();
96 init_sub_mask_color_span_funcs_mmx(); 96 init_sub_pixel_mask_span_funcs_mmx();
97 97 init_sub_color_span_funcs_mmx();
98 init_sub_pixel_pt_funcs_mmx(); 98 init_sub_mask_color_span_funcs_mmx();
99 init_sub_pixel_color_pt_funcs_mmx(); 99
100 init_sub_pixel_mask_pt_funcs_mmx(); 100 init_sub_pixel_pt_funcs_mmx();
101 init_sub_color_pt_funcs_mmx(); 101 init_sub_pixel_color_pt_funcs_mmx();
102 init_sub_mask_color_pt_funcs_mmx(); 102 init_sub_pixel_mask_pt_funcs_mmx();
103 init_sub_color_pt_funcs_mmx();
104 init_sub_mask_color_pt_funcs_mmx();
105 }
103#endif 106#endif
104 init_sub_pixel_span_funcs_c(); 107 init_sub_pixel_span_funcs_c();
105 init_sub_pixel_color_span_funcs_c(); 108 init_sub_pixel_color_span_funcs_c();