summaryrefslogtreecommitdiff
path: root/legacy
diff options
context:
space:
mode:
authorCarsten Haitzler <raster@rasterman.com>2012-10-16 03:15:40 +0000
committerCarsten Haitzler <raster@rasterman.com>2012-10-16 03:15:40 +0000
commit71adbc0c3806fb0b4dfe7268a24edf17917afb04 (patch)
treef826313eaf1e990cfdbf1659b9745af1515d7376 /legacy
parent6912aba9dbb6d291e1d60c3fa3d7de5436b19b1d (diff)
futher option reduction and ifdef removal.
SVN revision: 78029
Diffstat (limited to 'legacy')
-rw-r--r--legacy/evas/configure.ac3
-rw-r--r--legacy/evas/src/lib/engines/common/evas_convert_yuv.c33
-rw-r--r--legacy/evas/src/lib/engines/common/evas_image_main.c8
-rw-r--r--legacy/evas/src/lib/engines/common/evas_map_image.c51
-rw-r--r--legacy/evas/src/lib/engines/common/evas_scale_sample.c72
-rw-r--r--legacy/evas/src/lib/engines/common/evas_scale_smooth.c409
-rw-r--r--legacy/evas/src/lib/engines/common/evas_scale_smooth.h12
-rw-r--r--legacy/evas/src/lib/include/evas_options.h18
8 files changed, 47 insertions, 559 deletions
diff --git a/legacy/evas/configure.ac b/legacy/evas/configure.ac
index 2be005f633..6dea20206f 100644
--- a/legacy/evas/configure.ac
+++ b/legacy/evas/configure.ac
@@ -1181,9 +1181,6 @@ EVAS_CHECK_DITHER([no-dither-mask], [conversion to 16bpp without dither mask], [
1181##################################################################### 1181#####################################################################
1182## no longer options - turn on. 1182## no longer options - turn on.
1183 1183
1184AC_DEFINE(BUILD_SCALE_SAMPLE, 1, [YUV])
1185AC_DEFINE(BUILD_SCALE_SMOOTH, 1, [YUV])
1186AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV])
1187AC_DEFINE(BUILD_CONVERT_8_RGB_332, 1, [8bpp RGB 332]) 1184AC_DEFINE(BUILD_CONVERT_8_RGB_332, 1, [8bpp RGB 332])
1188AC_DEFINE(BUILD_CONVERT_8_RGB_666, 1, [8bpp RGB 666]) 1185AC_DEFINE(BUILD_CONVERT_8_RGB_666, 1, [8bpp RGB 666])
1189AC_DEFINE(BUILD_CONVERT_8_RGB_232, 1, [8bpp RGB 232]) 1186AC_DEFINE(BUILD_CONVERT_8_RGB_232, 1, [8bpp RGB 232])
diff --git a/legacy/evas/src/lib/engines/common/evas_convert_yuv.c b/legacy/evas/src/lib/engines/common/evas_convert_yuv.c
index 000cb01aa5..eada664eeb 100644
--- a/legacy/evas/src/lib/engines/common/evas_convert_yuv.c
+++ b/legacy/evas/src/lib/engines/common/evas_convert_yuv.c
@@ -1,7 +1,7 @@
1#include "evas_common.h" 1#include "evas_common.h"
2#include "evas_convert_yuv.h" 2#include "evas_convert_yuv.h"
3 3
4#if defined BUILD_MMX || defined BUILD_SSE 4#if defined BUILD_MMX
5# include "evas_mmx.h" 5# include "evas_mmx.h"
6#endif 6#endif
7 7
@@ -15,8 +15,6 @@
15 15
16#endif 16#endif
17 17
18#ifdef BUILD_CONVERT_YUV
19
20static void _evas_yuv_init (void); 18static void _evas_yuv_init (void);
21static void _evas_yv12torgb_sse (unsigned char **yuv, unsigned char *rgb, int w, int h); 19static void _evas_yv12torgb_sse (unsigned char **yuv, unsigned char *rgb, int w, int h);
22static void _evas_yv12torgb_mmx (unsigned char **yuv, unsigned char *rgb, int w, int h); 20static void _evas_yv12torgb_mmx (unsigned char **yuv, unsigned char *rgb, int w, int h);
@@ -108,8 +106,6 @@ const vector unsigned char pickrgb2 = AVV(0x3, 0x1, 0x2, 0x19,
108#endif 106#endif
109#endif 107#endif
110 108
111#ifdef BUILD_C
112
113/* shortcut speedup lookup-tables */ 109/* shortcut speedup lookup-tables */
114static short _v1164[256]; 110static short _v1164[256];
115static short _v1596[256]; 111static short _v1596[256];
@@ -124,8 +120,6 @@ static unsigned char _clip_lut[1024];
124 120
125static int initted = 0; 121static int initted = 0;
126 122
127#endif
128
129void 123void
130evas_common_convert_yuv_420p_601_rgba(DATA8 **src, DATA8 *dst, int w, int h) 124evas_common_convert_yuv_420p_601_rgba(DATA8 **src, DATA8 *dst, int w, int h)
131{ 125{
@@ -151,12 +145,10 @@ evas_common_convert_yuv_420p_601_rgba(DATA8 **src, DATA8 *dst, int w, int h)
151#endif 145#endif
152 else 146 else
153 { 147 {
154#ifdef BUILD_C
155 if (!initted) _evas_yuv_init(); 148 if (!initted) _evas_yuv_init();
156 initted = 1; 149 initted = 1;
157 /* FIXME: diz may be faster sometimes */ 150 /* FIXME: diz may be faster sometimes */
158 _evas_yv12torgb_raster(src, dst, w, h); 151 _evas_yv12torgb_raster(src, dst, w, h);
159#endif
160 } 152 }
161} 153}
162 154
@@ -724,7 +716,6 @@ _evas_yv12torgb_altivec(unsigned char **yuv, unsigned char *rgb, int w, int h)
724static void 716static void
725_evas_yuv_init(void) 717_evas_yuv_init(void)
726{ 718{
727#ifdef BUILD_C
728 int i; 719 int i;
729 720
730 for (i = 0; i < 256; i++) 721 for (i = 0; i < 256; i++)
@@ -742,14 +733,12 @@ _evas_yuv_init(void)
742 { 733 {
743 _clip_lut[i+384] = i < 0 ? 0 : (i > 255) ? 255 : i; 734 _clip_lut[i+384] = i < 0 ? 0 : (i > 255) ? 255 : i;
744 } 735 }
745#endif
746} 736}
747 737
748#ifdef BUILD_ALTIVEC 738#ifdef BUILD_ALTIVEC
749static void 739static void
750_evas_yv12torgb_diz(unsigned char **yuv, unsigned char *rgb, int w, int h) 740_evas_yv12torgb_diz(unsigned char **yuv, unsigned char *rgb, int w, int h)
751{ 741{
752#ifdef BUILD_C
753 int xx, yy; 742 int xx, yy;
754 int y, u, v, r, g, b; 743 int y, u, v, r, g, b;
755 unsigned char *yp1, *yp2, *up, *vp; 744 unsigned char *yp1, *yp2, *up, *vp;
@@ -820,14 +809,12 @@ _evas_yv12torgb_diz(unsigned char **yuv, unsigned char *rgb, int w, int h)
820 dp1 += (w * 4); 809 dp1 += (w * 4);
821 dp2 += (w * 4); 810 dp2 += (w * 4);
822 } 811 }
823#endif
824} 812}
825#endif 813#endif
826 814
827static void 815static void
828_evas_yv12torgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h) 816_evas_yv12torgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h)
829{ 817{
830#ifdef BUILD_C
831 int xx, yy; 818 int xx, yy;
832 int y, u, v; 819 int y, u, v;
833 unsigned char *yp1, *yp2, *up, *vp; 820 unsigned char *yp1, *yp2, *up, *vp;
@@ -887,43 +874,35 @@ _evas_yv12torgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h)
887 dp1 += (w * 4); 874 dp1 += (w * 4);
888 dp2 += (w * 4); 875 dp2 += (w * 4);
889 } 876 }
890#endif
891} 877}
892 878
893void 879void
894evas_common_convert_yuv_422_601_rgba(DATA8 **src, DATA8 *dst, int w, int h) 880evas_common_convert_yuv_422_601_rgba(DATA8 **src, DATA8 *dst, int w, int h)
895{ 881{
896#ifdef BUILD_C
897 if (!initted) _evas_yuv_init(); 882 if (!initted) _evas_yuv_init();
898 initted = 1; 883 initted = 1;
899 _evas_yuy2torgb_raster(src, dst, w, h); 884 _evas_yuy2torgb_raster(src, dst, w, h);
900#endif
901} 885}
902 886
903void 887void
904evas_common_convert_yuv_420_601_rgba(DATA8 **src, DATA8 *dst, int w, int h) 888evas_common_convert_yuv_420_601_rgba(DATA8 **src, DATA8 *dst, int w, int h)
905{ 889{
906#ifdef BUILD_C
907 if (!initted) _evas_yuv_init(); 890 if (!initted) _evas_yuv_init();
908 initted = 1; 891 initted = 1;
909 _evas_nv12torgb_raster(src, dst, w, h); 892 _evas_nv12torgb_raster(src, dst, w, h);
910#endif
911} 893}
912 894
913void 895void
914evas_common_convert_yuv_420T_601_rgba(DATA8 **src, DATA8 *dst, int w, int h) 896evas_common_convert_yuv_420T_601_rgba(DATA8 **src, DATA8 *dst, int w, int h)
915{ 897{
916#ifdef BUILD_C
917 if (initted) _evas_yuv_init(); 898 if (initted) _evas_yuv_init();
918 initted = 1; 899 initted = 1;
919 _evas_nv12tiledtorgb_raster(src, dst, w, h); 900 _evas_nv12tiledtorgb_raster(src, dst, w, h);
920#endif
921} 901}
922 902
923static void 903static void
924_evas_yuy2torgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h) 904_evas_yuy2torgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h)
925{ 905{
926#ifdef BUILD_C
927 int xx, yy; 906 int xx, yy;
928 int y, u, v; 907 int y, u, v;
929 unsigned char *yp1, *yp2, *up, *vp; 908 unsigned char *yp1, *yp2, *up, *vp;
@@ -972,10 +951,8 @@ _evas_yuy2torgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h)
972 yp1 += 4; yp2 += 4; up += 4; vp += 4; 951 yp1 += 4; yp2 += 4; up += 4; vp += 4;
973 } 952 }
974 } 953 }
975#endif
976} 954}
977 955
978#ifdef BUILD_C
979static inline void 956static inline void
980_evas_yuv2rgb_420_raster(unsigned char *yp1, unsigned char *yp2, unsigned char *up, unsigned char *vp, 957_evas_yuv2rgb_420_raster(unsigned char *yp1, unsigned char *yp2, unsigned char *up, unsigned char *vp,
981 unsigned char *dp1, unsigned char *dp2) 958 unsigned char *dp1, unsigned char *dp2)
@@ -1055,13 +1032,10 @@ _evas_yuv2rgb_420_raster(unsigned char *yp1, unsigned char *yp2, unsigned char *
1055#endif 1032#endif
1056 *((DATA32 *) dp2) = 0xff000000 + rgb; 1033 *((DATA32 *) dp2) = 0xff000000 + rgb;
1057} 1034}
1058#endif
1059 1035
1060static void 1036static void
1061_evas_nv12tiledtorgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h) 1037_evas_nv12tiledtorgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h)
1062{ 1038{
1063#ifdef BUILD_C
1064
1065#define HANDLE_MACROBLOCK(YP1, YP2, UP, VP, DP1, DP2) \ 1039#define HANDLE_MACROBLOCK(YP1, YP2, UP, VP, DP1, DP2) \
1066 { \ 1040 { \
1067 int i; \ 1041 int i; \
@@ -1211,13 +1185,11 @@ _evas_nv12tiledtorgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int
1211 HANDLE_MACROBLOCK(yp1, yp2, up, vp, dp1, dp2); 1185 HANDLE_MACROBLOCK(yp1, yp2, up, vp, dp1, dp2);
1212 } 1186 }
1213 } 1187 }
1214#endif
1215} 1188}
1216 1189
1217static void 1190static void
1218_evas_nv12torgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h) 1191_evas_nv12torgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h)
1219{ 1192{
1220#ifdef BUILD_C
1221 int xx, yy; 1193 int xx, yy;
1222 unsigned char *yp1, *yp2, *up, *vp; 1194 unsigned char *yp1, *yp2, *up, *vp;
1223 unsigned char *dp1; 1195 unsigned char *dp1;
@@ -1251,8 +1223,5 @@ _evas_nv12torgb_raster(unsigned char **yuv, unsigned char *rgb, int w, int h)
1251 yp1 += w; 1223 yp1 += w;
1252 yp2 += w; 1224 yp2 += w;
1253 } 1225 }
1254#endif
1255} 1226}
1256 1227
1257#endif
1258
diff --git a/legacy/evas/src/lib/engines/common/evas_image_main.c b/legacy/evas/src/lib/engines/common/evas_image_main.c
index fffe524b06..e47cc9646c 100644
--- a/legacy/evas/src/lib/engines/common/evas_image_main.c
+++ b/legacy/evas/src/lib/engines/common/evas_image_main.c
@@ -736,32 +736,24 @@ evas_common_image_colorspace_normalize(RGBA_Image *im)
736 } 736 }
737 break; 737 break;
738 case EVAS_COLORSPACE_YCBCR422P601_PL: 738 case EVAS_COLORSPACE_YCBCR422P601_PL:
739#ifdef BUILD_CONVERT_YUV
740 if ((im->image.data) && (*((unsigned char **)im->cs.data))) 739 if ((im->image.data) && (*((unsigned char **)im->cs.data)))
741 evas_common_convert_yuv_420p_601_rgba(im->cs.data, (DATA8*) im->image.data, 740 evas_common_convert_yuv_420p_601_rgba(im->cs.data, (DATA8*) im->image.data,
742 im->cache_entry.w, im->cache_entry.h); 741 im->cache_entry.w, im->cache_entry.h);
743#endif
744 break; 742 break;
745 case EVAS_COLORSPACE_YCBCR422601_PL: 743 case EVAS_COLORSPACE_YCBCR422601_PL:
746#ifdef BUILD_CONVERT_YUV
747 if ((im->image.data) && (*((unsigned char **)im->cs.data))) 744 if ((im->image.data) && (*((unsigned char **)im->cs.data)))
748 evas_common_convert_yuv_422_601_rgba(im->cs.data, (DATA8*) im->image.data, 745 evas_common_convert_yuv_422_601_rgba(im->cs.data, (DATA8*) im->image.data,
749 im->cache_entry.w, im->cache_entry.h); 746 im->cache_entry.w, im->cache_entry.h);
750#endif
751 break; 747 break;
752 case EVAS_COLORSPACE_YCBCR420NV12601_PL: 748 case EVAS_COLORSPACE_YCBCR420NV12601_PL:
753#ifdef BUILD_CONVERT_YUV
754 if ((im->image.data) && (*((unsigned char **)im->cs.data))) 749 if ((im->image.data) && (*((unsigned char **)im->cs.data)))
755 evas_common_convert_yuv_420_601_rgba(im->cs.data, (DATA8*) im->image.data, 750 evas_common_convert_yuv_420_601_rgba(im->cs.data, (DATA8*) im->image.data,
756 im->cache_entry.w, im->cache_entry.h); 751 im->cache_entry.w, im->cache_entry.h);
757#endif
758 break; 752 break;
759 case EVAS_COLORSPACE_YCBCR420TM12601_PL: 753 case EVAS_COLORSPACE_YCBCR420TM12601_PL:
760#ifdef BUILD_CONVERT_YUV
761 if ((im->image.data) && (*((unsigned char **)im->cs.data))) 754 if ((im->image.data) && (*((unsigned char **)im->cs.data)))
762 evas_common_convert_yuv_420T_601_rgba(im->cs.data, (DATA8*) im->image.data, 755 evas_common_convert_yuv_420T_601_rgba(im->cs.data, (DATA8*) im->image.data,
763 im->cache_entry.w, im->cache_entry.h); 756 im->cache_entry.w, im->cache_entry.h);
764#endif
765 break; 757 break;
766 default: 758 default:
767 break; 759 break;
diff --git a/legacy/evas/src/lib/engines/common/evas_map_image.c b/legacy/evas/src/lib/engines/common/evas_map_image.c
index 776820f04b..bc2d5a139a 100644
--- a/legacy/evas/src/lib/engines/common/evas_map_image.c
+++ b/legacy/evas/src/lib/engines/common/evas_map_image.c
@@ -5,11 +5,9 @@
5#include "evas_cs2_private.h" 5#include "evas_cs2_private.h"
6#endif 6#endif
7 7
8#ifdef BUILD_SCALE_SMOOTH 8#ifdef BUILD_MMX
9# ifdef BUILD_MMX 9# undef SCALE_USING_MMX
10# undef SCALE_USING_MMX 10# define SCALE_USING_MMX
11# define SCALE_USING_MMX
12# endif
13#endif 11#endif
14 12
15#define FPI 8 13#define FPI 8
@@ -630,26 +628,23 @@ evas_common_map_rgba_prepare(RGBA_Image *src, RGBA_Image *dst,
630 return EINA_TRUE; 628 return EINA_TRUE;
631} 629}
632 630
633#ifdef BUILD_SCALE_SMOOTH 631#ifdef BUILD_MMX
634# ifdef BUILD_MMX 632# undef FUNC_NAME
635# undef FUNC_NAME 633# undef FUNC_NAME_DO
636# undef FUNC_NAME_DO 634# define FUNC_NAME evas_common_map_rgba_internal_mmx
637# define FUNC_NAME evas_common_map_rgba_internal_mmx 635# define FUNC_NAME_DO evas_common_map_rgba_internal_mmx_do
638# define FUNC_NAME_DO evas_common_map_rgba_internal_mmx_do 636# undef SCALE_USING_MMX
639# undef SCALE_USING_MMX 637# define SCALE_USING_MMX
640# define SCALE_USING_MMX 638# include "evas_map_image_internal.c"
641# include "evas_map_image_internal.c"
642# endif
643# ifdef BUILD_C
644# undef FUNC_NAME
645# undef FUNC_NAME_DO
646# define FUNC_NAME evas_common_map_rgba_internal
647# define FUNC_NAME_DO evas_common_map_rgba_internal_do
648# undef SCALE_USING_MMX
649# include "evas_map_image_internal.c"
650# endif
651#endif 639#endif
652 640
641#undef FUNC_NAME
642#undef FUNC_NAME_DO
643#define FUNC_NAME evas_common_map_rgba_internal
644#define FUNC_NAME_DO evas_common_map_rgba_internal_do
645#undef SCALE_USING_MMX
646#include "evas_map_image_internal.c"
647
653EAPI void 648EAPI void
654evas_common_map_rgba(RGBA_Image *src, RGBA_Image *dst, 649evas_common_map_rgba(RGBA_Image *src, RGBA_Image *dst,
655 RGBA_Draw_Context *dc, 650 RGBA_Draw_Context *dc,
@@ -685,9 +680,7 @@ evas_common_map_rgba(RGBA_Image *src, RGBA_Image *dst,
685 evas_common_map_rgba_internal_mmx(src, dst, dc, p, smooth, level); 680 evas_common_map_rgba_internal_mmx(src, dst, dc, p, smooth, level);
686 else 681 else
687#endif 682#endif
688#ifdef BUILD_C
689 evas_common_map_rgba_internal(src, dst, dc, p, smooth, level); 683 evas_common_map_rgba_internal(src, dst, dc, p, smooth, level);
690#endif
691 return; 684 return;
692 } 685 }
693 /* save out clip info */ 686 /* save out clip info */
@@ -709,9 +702,7 @@ evas_common_map_rgba(RGBA_Image *src, RGBA_Image *dst,
709 evas_common_map_rgba_internal_mmx(src, dst, dc, p, smooth, level); 702 evas_common_map_rgba_internal_mmx(src, dst, dc, p, smooth, level);
710 else 703 else
711#endif 704#endif
712#ifdef BUILD_C
713 evas_common_map_rgba_internal(src, dst, dc, p, smooth, level); 705 evas_common_map_rgba_internal(src, dst, dc, p, smooth, level);
714#endif
715 } 706 }
716 /* restore clip info */ 707 /* restore clip info */
717 dc->clip.use = c; dc->clip.x = cx; dc->clip.y = cy; dc->clip.w = cw; dc->clip.h = ch; 708 dc->clip.use = c; dc->clip.x = cx; dc->clip.y = cy; dc->clip.w = cw; dc->clip.h = ch;
@@ -749,11 +740,9 @@ evas_common_map_rgba_do(const Eina_Rectangle *clip,
749 &spans->spans[0], smooth, level); 740 &spans->spans[0], smooth, level);
750 else 741 else
751#endif 742#endif
752#ifdef BUILD_C
753 evas_common_map_rgba_internal_do(src, dst, dc, 743 evas_common_map_rgba_internal_do(src, dst, dc,
754 &spans->spans[0], smooth, level); 744 &spans->spans[0], smooth, level);
755#endif 745 return;
756 return ;
757 } 746 }
758 747
759 for (i = 0; i < rects->active; ++i) 748 for (i = 0; i < rects->active; ++i)
@@ -769,9 +758,7 @@ evas_common_map_rgba_do(const Eina_Rectangle *clip,
769 &spans->spans[i], smooth, level); 758 &spans->spans[i], smooth, level);
770 else 759 else
771#endif 760#endif
772#ifdef BUILD_C
773 evas_common_map_rgba_internal_do(src, dst, dc, 761 evas_common_map_rgba_internal_do(src, dst, dc,
774 &spans->spans[i], smooth, level); 762 &spans->spans[i], smooth, level);
775#endif
776 } 763 }
777} 764}
diff --git a/legacy/evas/src/lib/engines/common/evas_scale_sample.c b/legacy/evas/src/lib/engines/common/evas_scale_sample.c
index 5e34a37825..f78aad3879 100644
--- a/legacy/evas/src/lib/engines/common/evas_scale_sample.c
+++ b/legacy/evas/src/lib/engines/common/evas_scale_sample.c
@@ -3,43 +3,6 @@
3 3
4static void scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst, RGBA_Draw_Context *dc, int src_region_x, int src_region_y, int src_region_w, int src_region_h, int dst_region_x, int dst_region_y, int dst_region_w, int dst_region_h); 4static void scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst, RGBA_Draw_Context *dc, int src_region_x, int src_region_y, int src_region_w, int src_region_h, int dst_region_x, int dst_region_y, int dst_region_w, int dst_region_h);
5 5
6#ifndef BUILD_SCALE_SMOOTH
7#ifdef BUILD_SCALE_SAMPLE
8EAPI void
9evas_common_scale_rgba_in_to_out_clip_smooth_do(const Cutout_Rects *reuse,
10 const Eina_Rectangle *clip,
11 RGBA_Image *src, RGBA_Image *dst,
12 RGBA_Draw_Context *dc,
13 int src_region_x, int src_region_y,
14 int src_region_w, int src_region_h,
15 int dst_region_x, int dst_region_y,
16 int dst_region_w, int dst_region_h)
17{
18 evas_common_scale_rgba_in_to_out_clip_sample_do(reuse, clip, src, dst, dc,
19 src_region_x, src_region_y,
20 src_region_w, src_region_h,
21 dst_region_x, dst_region_y,
22 dst_region_w, dst_region_h);
23}
24
25EAPI void
26evas_common_scale_rgba_in_to_out_clip_smooth(RGBA_Image *src, RGBA_Image *dst,
27 RGBA_Draw_Context *dc,
28 int src_region_x, int src_region_y,
29 int src_region_w, int src_region_h,
30 int dst_region_x, int dst_region_y,
31 int dst_region_w, int dst_region_h)
32{
33 evas_common_scale_rgba_in_to_out_clip_sample(src, dst, dc,
34 src_region_x, src_region_y,
35 src_region_w, src_region_h,
36 dst_region_x, dst_region_y,
37 dst_region_w, dst_region_h);
38}
39#endif
40#endif
41
42#ifdef BUILD_SCALE_SAMPLE
43EAPI void 6EAPI void
44evas_common_scale_rgba_in_to_out_clip_sample(RGBA_Image *src, RGBA_Image *dst, 7evas_common_scale_rgba_in_to_out_clip_sample(RGBA_Image *src, RGBA_Image *dst,
45 RGBA_Draw_Context *dc, 8 RGBA_Draw_Context *dc,
@@ -443,38 +406,3 @@ scale_rgba_in_to_out_clip_sample_internal(RGBA_Image *src, RGBA_Image *dst,
443 } 406 }
444 } 407 }
445} 408}
446#else
447#ifdef BUILD_SCALE_SMOOTH
448EAPI void
449evas_common_scale_rgba_in_to_out_clip_sample(RGBA_Image *src, RGBA_Image *dst,
450 RGBA_Draw_Context *dc,
451 int src_region_x, int src_region_y,
452 int src_region_w, int src_region_h,
453 int dst_region_x, int dst_region_y,
454 int dst_region_w, int dst_region_h)
455{
456 evas_common_scale_rgba_in_to_out_clip_smooth(src, dst, dc,
457 src_region_x, src_region_y,
458 src_region_w, src_region_h,
459 dst_region_x, dst_region_y,
460 dst_region_w, dst_region_h);
461}
462
463EAPI void
464evas_common_scale_rgba_in_to_out_clip_sample_do(const Cutout_Rects *reuse,
465 const Eina_Rectangle *clip,
466 RGBA_Image *src, RGBA_Image *dst,
467 RGBA_Draw_Context *dc,
468 int src_region_x, int src_region_y,
469 int src_region_w, int src_region_h,
470 int dst_region_x, int dst_region_y,
471 int dst_region_w, int dst_region_h)
472{
473 evas_common_scale_rgba_in_to_out_clip_smooth_do(reuse, clip, src, dst, dc,
474 src_region_x, src_region_y,
475 src_region_w, src_region_h,
476 dst_region_x, dst_region_y,
477 dst_region_w, dst_region_h);
478}
479#endif
480#endif
diff --git a/legacy/evas/src/lib/engines/common/evas_scale_smooth.c b/legacy/evas/src/lib/engines/common/evas_scale_smooth.c
index a3cb379069..5cb1c68609 100644
--- a/legacy/evas/src/lib/engines/common/evas_scale_smooth.c
+++ b/legacy/evas/src/lib/engines/common/evas_scale_smooth.c
@@ -89,373 +89,26 @@ scale_calc_a_points(int *p, int s, int d, int c, int cc)
89 } 89 }
90} 90}
91 91
92#ifdef BUILD_SCALE_SMOOTH
93#ifdef BUILD_C
94EAPI void
95evas_common_scale_rgba_mipmap_down_2x2_c(DATA32 *src, DATA32 *dst, int src_w, int src_h)
96{
97 int x, y, dst_w, dst_h;
98 DATA32 *src_ptr, *src_ptr2, *dst_ptr;
99
100 dst_w = src_w >> 1;
101 dst_h = src_h >> 1;
102
103 if (dst_w < 1) dst_w = 1;
104 if (dst_h < 1) dst_h = 1;
105
106 src_ptr = src;
107 src_ptr2 = src + src_w;
108 dst_ptr = dst;
109 for (y = 0; y < dst_h; y++)
110 {
111 src_ptr = src + (y * src_w * 2);
112 src_ptr2 = src_ptr + src_w;
113 for (x = 0; x < dst_w; x++)
114 {
115 R_VAL(dst_ptr) = (R_VAL(src_ptr) + R_VAL(src_ptr + 1) + R_VAL(src_ptr2) + R_VAL(src_ptr2 + 1)) >> 2;
116 G_VAL(dst_ptr) = (G_VAL(src_ptr) + G_VAL(src_ptr + 1) + G_VAL(src_ptr2) + G_VAL(src_ptr2 + 1)) >> 2;
117 B_VAL(dst_ptr) = (B_VAL(src_ptr) + B_VAL(src_ptr + 1) + B_VAL(src_ptr2) + B_VAL(src_ptr2 + 1)) >> 2;
118 A_VAL(dst_ptr) = (A_VAL(src_ptr) + A_VAL(src_ptr + 1) + A_VAL(src_ptr2) + A_VAL(src_ptr2 + 1)) >> 2;
119
120 src_ptr+=2;
121 src_ptr2+=2;
122 dst_ptr++;
123 }
124 }
125}
126#endif
127#endif
128
129#ifdef BUILD_SCALE_SMOOTH
130#ifdef BUILD_C
131EAPI void
132evas_common_scale_rgba_mipmap_down_2x1_c(DATA32 *src, DATA32 *dst, int src_w, int src_h)
133{
134 int x, y, dst_w, dst_h;
135 DATA32 *src_ptr, *dst_ptr;
136
137 dst_w = src_w >> 1;
138 dst_h = src_h >> 1;
139
140 if (dst_w < 1) dst_w = 1;
141 if (dst_h < 1) dst_h = 1;
142
143 src_ptr = src;
144 dst_ptr = dst;
145 for (y = 0; y < dst_h; y++)
146 {
147 src_ptr = src + (y * src_w * 2);
148 for (x = 0; x < dst_w; x++)
149 {
150 R_VAL(dst_ptr) = (R_VAL(src_ptr) + R_VAL(src_ptr + 1)) >> 1;
151 G_VAL(dst_ptr) = (G_VAL(src_ptr) + G_VAL(src_ptr + 1)) >> 1;
152 B_VAL(dst_ptr) = (B_VAL(src_ptr) + B_VAL(src_ptr + 1)) >> 1;
153 A_VAL(dst_ptr) = (A_VAL(src_ptr) + A_VAL(src_ptr + 1)) >> 1;
154
155 src_ptr+=2;
156 dst_ptr++;
157 }
158 }
159}
160#endif
161#endif
162
163#ifdef BUILD_SCALE_SMOOTH
164#ifdef BUILD_C
165EAPI void
166evas_common_scale_rgba_mipmap_down_1x2_c(DATA32 *src, DATA32 *dst, int src_w, int src_h)
167{
168 int x, y, dst_w, dst_h;
169 DATA32 *src_ptr, *src_ptr2, *dst_ptr;
170
171 dst_w = src_w >> 1;
172 dst_h = src_h >> 1;
173
174 if (dst_w < 1) dst_w = 1;
175 if (dst_h < 1) dst_h = 1;
176
177 src_ptr = src;
178 dst_ptr = dst;
179 for (y = 0; y < dst_h; y++)
180 {
181 src_ptr = src + (y * src_w * 2);
182 src_ptr2 = src_ptr + src_w;
183 for (x = 0; x < dst_w; x++)
184 {
185 R_VAL(dst_ptr) = (R_VAL(src_ptr) + R_VAL(src_ptr2)) >> 1;
186 G_VAL(dst_ptr) = (G_VAL(src_ptr) + G_VAL(src_ptr2)) >> 1;
187 B_VAL(dst_ptr) = (B_VAL(src_ptr) + B_VAL(src_ptr2)) >> 1;
188 A_VAL(dst_ptr) = (A_VAL(src_ptr) + A_VAL(src_ptr2)) >> 1;
189
190 src_ptr+=2;
191 src_ptr2+=2;
192 dst_ptr++;
193 }
194 }
195}
196#endif
197#endif
198
199#ifdef BUILD_SCALE_SMOOTH
200#ifdef BUILD_C
201EAPI void
202evas_common_scale_rgb_mipmap_down_2x2_c(DATA32 *src, DATA32 *dst, int src_w, int src_h)
203{
204 int x, y, dst_w, dst_h;
205 DATA32 *src_ptr, *src_ptr2, *dst_ptr;
206
207 dst_w = src_w >> 1;
208 dst_h = src_h >> 1;
209
210 if (dst_w < 1) dst_w = 1;
211 if (dst_h < 1) dst_h = 1;
212
213 src_ptr = src;
214 src_ptr2 = src + src_w;
215 dst_ptr = dst;
216 for (y = 0; y < dst_h; y++)
217 {
218 for (x = 0; x < dst_w; x++)
219 {
220 R_VAL(dst_ptr) = (R_VAL(src_ptr) + R_VAL(src_ptr + 1) + R_VAL(src_ptr2) + R_VAL(src_ptr2 + 1)) >> 2;
221 G_VAL(dst_ptr) = (G_VAL(src_ptr) + G_VAL(src_ptr + 1) + G_VAL(src_ptr2) + G_VAL(src_ptr2 + 1)) >> 2;
222 B_VAL(dst_ptr) = (B_VAL(src_ptr) + B_VAL(src_ptr + 1) + B_VAL(src_ptr2) + B_VAL(src_ptr2 + 1)) >> 2;
223 A_VAL(dst_ptr) = 0xff;
224
225 src_ptr+=2;
226 src_ptr2+=2;
227 dst_ptr++;
228 }
229 src_ptr += src_w;
230 src_ptr2 += src_w;
231 }
232}
233#endif
234#endif
235
236#ifdef BUILD_SCALE_SMOOTH
237#ifdef BUILD_C
238EAPI void
239evas_common_scale_rgb_mipmap_down_2x1_c(DATA32 *src, DATA32 *dst, int src_w, int src_h)
240{
241 int x, y, dst_w, dst_h;
242 DATA32 *src_ptr, *dst_ptr;
243
244 dst_w = src_w >> 1;
245 dst_h = src_h >> 1;
246
247 if (dst_w < 1) dst_w = 1;
248 if (dst_h < 1) dst_h = 1;
249
250 src_ptr = src;
251 dst_ptr = dst;
252 for (y = 0; y < dst_h; y++)
253 {
254 for (x = 0; x < dst_w; x++)
255 {
256 R_VAL(dst_ptr) = (R_VAL(src_ptr) + R_VAL(src_ptr + 1)) >> 1;
257 G_VAL(dst_ptr) = (G_VAL(src_ptr) + G_VAL(src_ptr + 1)) >> 1;
258 B_VAL(dst_ptr) = (B_VAL(src_ptr) + B_VAL(src_ptr + 1)) >> 1;
259 A_VAL(dst_ptr) = 0xff;
260
261 src_ptr+=2;
262 dst_ptr++;
263 }
264 src_ptr += src_w;
265 }
266}
267#endif
268#endif
269
270#ifdef BUILD_SCALE_SMOOTH
271#ifdef BUILD_C
272EAPI void
273evas_common_scale_rgb_mipmap_down_1x2_c(DATA32 *src, DATA32 *dst, int src_w, int src_h)
274{
275 int x, y, dst_w, dst_h;
276 DATA32 *src_ptr, *src_ptr2, *dst_ptr;
277
278 dst_w = src_w >> 1;
279 dst_h = src_h >> 1;
280
281 if (dst_w < 1) dst_w = 1;
282 if (dst_h < 1) dst_h = 1;
283
284 src_ptr = src;
285 src_ptr2 = src + src_w;
286 dst_ptr = dst;
287 for (y = 0; y < dst_h; y++)
288 {
289 for (x = 0; x < dst_w; x++)
290 {
291 R_VAL(dst_ptr) = (R_VAL(src_ptr) + R_VAL(src_ptr2)) >> 1;
292 G_VAL(dst_ptr) = (G_VAL(src_ptr) + G_VAL(src_ptr2)) >> 1;
293 B_VAL(dst_ptr) = (B_VAL(src_ptr) + B_VAL(src_ptr2)) >> 1;
294 A_VAL(dst_ptr) = 0xff;
295
296 src_ptr+=2;
297 src_ptr2+=2;
298 dst_ptr++;
299 }
300 src_ptr += src_w;
301 src_ptr2 += src_w;
302 }
303}
304#endif
305#endif
306
307#ifdef BUILD_SCALE_SMOOTH
308#ifdef BUILD_MMX 92#ifdef BUILD_MMX
309EAPI void 93# undef SCALE_FUNC
310evas_common_scale_rgba_mipmap_down_2x2_mmx(DATA32 *src, DATA32 *dst, int src_w, int src_h) 94# define SCALE_FUNC evas_common_scale_rgba_in_to_out_clip_smooth_mmx
311{ 95# undef SCALE_USING_MMX
312 int x, y, dst_w, dst_h; 96# define SCALE_USING_MMX
313 DATA32 *src_ptr, *src_ptr2, *dst_ptr; 97# include "evas_scale_smooth_scaler.c"
314
315 dst_w = src_w >> 1;
316 dst_h = src_h >> 1;
317
318 if (dst_w < 1) dst_w = 1;
319 if (dst_h < 1) dst_h = 1;
320
321 /* NB: Dead assignments (reassigned to different values below)
322 src_ptr = src;
323 src_ptr2 = src + src_w;
324 */
325
326 dst_ptr = dst;
327 for (y = 0; y < dst_h; y++)
328 {
329 src_ptr = src + (y * src_w * 2);
330 src_ptr2 = src_ptr + src_w;
331 for (x = 0; x < dst_w; x++)
332 {
333 punpcklbw_m2r(src_ptr[0], mm0);
334 punpcklbw_m2r(src_ptr[1], mm1);
335 punpcklbw_m2r(src_ptr2[0], mm2);
336 punpcklbw_m2r(src_ptr2[1], mm3);
337 psrlw_i2r(8, mm0);
338 psrlw_i2r(8, mm1);
339 psrlw_i2r(8, mm2);
340 psrlw_i2r(8, mm3);
341 paddw_r2r(mm1, mm0);
342 paddw_r2r(mm2, mm0);
343 paddw_r2r(mm3, mm0);
344 psrlw_i2r(2, mm0);
345 packuswb_r2r(mm0, mm0);
346 movd_r2m(mm0, dst_ptr[0]);
347
348 src_ptr+=2;
349 src_ptr2+=2;
350 dst_ptr++;
351 }
352 }
353}
354#endif
355#endif 98#endif
356 99
357#ifdef BUILD_SCALE_SMOOTH 100#undef SCALE_FUNC
358#ifdef BUILD_MMX 101#define SCALE_FUNC evas_common_scale_rgba_in_to_out_clip_smooth_c
359EAPI void 102#undef SCALE_USING_MMX
360evas_common_scale_rgba_mipmap_down_2x1_mmx(DATA32 *src, DATA32 *dst, int src_w, int src_h) 103#include "evas_scale_smooth_scaler.c"
361{
362 int x, y, dst_w, dst_h;
363 DATA32 *src_ptr, *dst_ptr;
364
365 dst_w = src_w >> 1;
366 dst_h = src_h >> 1;
367
368 if (dst_w < 1) dst_w = 1;
369 if (dst_h < 1) dst_h = 1;
370
371 src_ptr = src;
372 dst_ptr = dst;
373 for (y = 0; y < dst_h; y++)
374 {
375 src_ptr = src + (y * src_w * 2);
376 for (x = 0; x < dst_w; x++)
377 {
378 punpcklbw_m2r(src_ptr[0], mm0);
379 punpcklbw_m2r(src_ptr[1], mm1);
380 psrlw_i2r(8, mm0);
381 psrlw_i2r(8, mm1);
382 paddw_r2r(mm1, mm0);
383 psrlw_i2r(1, mm0);
384 packuswb_r2r(mm0, mm0);
385 movd_r2m(mm0, dst_ptr[0]);
386 104
387 src_ptr+=2;
388 dst_ptr++;
389 }
390 }
391}
392#endif
393#endif
394
395#ifdef BUILD_SCALE_SMOOTH
396#ifdef BUILD_MMX
397EAPI void
398evas_common_scale_rgba_mipmap_down_1x2_mmx(DATA32 *src, DATA32 *dst, int src_w, int src_h)
399{
400 int x, y, dst_w, dst_h;
401 DATA32 *src_ptr, *src_ptr2, *dst_ptr;
402
403 dst_w = src_w >> 1;
404 dst_h = src_h >> 1;
405
406 if (dst_w < 1) dst_w = 1;
407 if (dst_h < 1) dst_h = 1;
408
409 /* NB: Dead assignment (gets reassigned later) */
410// src_ptr = src;
411
412 src_ptr2 = src + src_w;
413 dst_ptr = dst;
414 for (y = 0; y < dst_h; y++)
415 {
416 src_ptr = src + (y * src_w * 2);
417 src_ptr2 = src_ptr + src_w;
418 for (x = 0; x < dst_w; x++)
419 {
420 punpcklbw_m2r(src_ptr[0], mm0);
421 punpcklbw_m2r(src_ptr2[0], mm1);
422 psrlw_i2r(8, mm0);
423 psrlw_i2r(8, mm1);
424 paddw_r2r(mm1, mm0);
425 psrlw_i2r(1, mm0);
426 packuswb_r2r(mm0, mm0);
427 movd_r2m(mm0, dst_ptr[0]);
428
429 src_ptr+=2;
430 src_ptr2+=2;
431 dst_ptr++;
432 }
433 }
434}
435#endif
436#endif
437
438#ifdef BUILD_SCALE_SMOOTH
439# ifdef BUILD_MMX
440# undef SCALE_FUNC
441# define SCALE_FUNC evas_common_scale_rgba_in_to_out_clip_smooth_mmx
442# undef SCALE_USING_MMX
443# define SCALE_USING_MMX
444# include "evas_scale_smooth_scaler.c"
445# endif
446# ifdef BUILD_C
447# undef SCALE_FUNC
448# define SCALE_FUNC evas_common_scale_rgba_in_to_out_clip_smooth_c
449# undef SCALE_USING_MMX
450# include "evas_scale_smooth_scaler.c"
451# endif
452EAPI void 105EAPI void
453evas_common_scale_rgba_in_to_out_clip_smooth(RGBA_Image *src, RGBA_Image *dst, 106evas_common_scale_rgba_in_to_out_clip_smooth(RGBA_Image *src, RGBA_Image *dst,
454 RGBA_Draw_Context *dc, 107 RGBA_Draw_Context *dc,
455 int src_region_x, int src_region_y, 108 int src_region_x, int src_region_y,
456 int src_region_w, int src_region_h, 109 int src_region_w, int src_region_h,
457 int dst_region_x, int dst_region_y, 110 int dst_region_x, int dst_region_y,
458 int dst_region_w, int dst_region_h) 111 int dst_region_w, int dst_region_h)
459{ 112{
460# ifdef BUILD_MMX 113# ifdef BUILD_MMX
461 int mmx, sse, sse2; 114 int mmx, sse, sse2;
@@ -517,13 +170,11 @@ evas_common_scale_rgba_in_to_out_clip_smooth(RGBA_Image *src, RGBA_Image *dst,
517 dst_region_w, dst_region_h); 170 dst_region_w, dst_region_h);
518 else 171 else
519# endif 172# endif
520# ifdef BUILD_C
521 evas_common_scale_rgba_in_to_out_clip_smooth_c(src, dst, dc, 173 evas_common_scale_rgba_in_to_out_clip_smooth_c(src, dst, dc,
522 src_region_x, src_region_y, 174 src_region_x, src_region_y,
523 src_region_w, src_region_h, 175 src_region_w, src_region_h,
524 dst_region_x, dst_region_y, 176 dst_region_x, dst_region_y,
525 dst_region_w, dst_region_h); 177 dst_region_w, dst_region_h);
526# endif
527 } 178 }
528 /* restore clip info */ 179 /* restore clip info */
529 dc->clip.use = c; dc->clip.x = cx; dc->clip.y = cy; dc->clip.w = cw; dc->clip.h = ch; 180 dc->clip.use = c; dc->clip.x = cx; dc->clip.y = cy; dc->clip.w = cw; dc->clip.h = ch;
@@ -561,14 +212,12 @@ evas_common_scale_rgba_in_to_out_clip_smooth_do(const Cutout_Rects *reuse,
561 dst_region_w, dst_region_h); 212 dst_region_w, dst_region_h);
562 else 213 else
563# endif 214# endif
564# ifdef BUILD_C
565 evas_common_scale_rgba_in_to_out_clip_smooth_c(src, dst, dc, 215 evas_common_scale_rgba_in_to_out_clip_smooth_c(src, dst, dc,
566 src_region_x, src_region_y, 216 src_region_x, src_region_y,
567 src_region_w, src_region_h, 217 src_region_w, src_region_h,
568 dst_region_x, dst_region_y, 218 dst_region_x, dst_region_y,
569 dst_region_w, dst_region_h); 219 dst_region_w, dst_region_h);
570# endif 220 return;
571 return ;
572 } 221 }
573 222
574 for (i = 0; i < reuse->active; ++i) 223 for (i = 0; i < reuse->active; ++i)
@@ -587,14 +236,10 @@ evas_common_scale_rgba_in_to_out_clip_smooth_do(const Cutout_Rects *reuse,
587 dst_region_w, dst_region_h); 236 dst_region_w, dst_region_h);
588 else 237 else
589# endif 238# endif
590# ifdef BUILD_C
591 evas_common_scale_rgba_in_to_out_clip_smooth_c(src, dst, dc, 239 evas_common_scale_rgba_in_to_out_clip_smooth_c(src, dst, dc,
592 src_region_x, src_region_y, 240 src_region_x, src_region_y,
593 src_region_w, src_region_h, 241 src_region_w, src_region_h,
594 dst_region_x, dst_region_y, 242 dst_region_x, dst_region_y,
595 dst_region_w, dst_region_h); 243 dst_region_w, dst_region_h);
596# endif
597 } 244 }
598} 245}
599
600#endif
diff --git a/legacy/evas/src/lib/engines/common/evas_scale_smooth.h b/legacy/evas/src/lib/engines/common/evas_scale_smooth.h
index 63ced5087c..913190f0c7 100644
--- a/legacy/evas/src/lib/engines/common/evas_scale_smooth.h
+++ b/legacy/evas/src/lib/engines/common/evas_scale_smooth.h
@@ -1,19 +1,7 @@
1#ifndef _EVAS_SCALE_SMOOTH_H 1#ifndef _EVAS_SCALE_SMOOTH_H
2#define _EVAS_SCALE_SMOOTH_H 2#define _EVAS_SCALE_SMOOTH_H
3 3
4EAPI void evas_common_scale_rgba_mipmap_down_2x2_c (DATA32 *src, DATA32 *dst, int src_w, int src_h);
5EAPI void evas_common_scale_rgba_mipmap_down_2x1_c (DATA32 *src, DATA32 *dst, int src_w, int src_h);
6EAPI void evas_common_scale_rgba_mipmap_down_1x2_c (DATA32 *src, DATA32 *dst, int src_w, int src_h);
7EAPI void evas_common_scale_rgb_mipmap_down_2x2_c (DATA32 *src, DATA32 *dst, int src_w, int src_h);
8EAPI void evas_common_scale_rgb_mipmap_down_2x1_c (DATA32 *src, DATA32 *dst, int src_w, int src_h);
9EAPI void evas_common_scale_rgb_mipmap_down_1x2_c (DATA32 *src, DATA32 *dst, int src_w, int src_h);
10
11EAPI void evas_common_scale_rgba_mipmap_down_2x2_mmx (DATA32 *src, DATA32 *dst, int src_w, int src_h);
12EAPI void evas_common_scale_rgba_mipmap_down_2x1_mmx (DATA32 *src, DATA32 *dst, int src_w, int src_h);
13EAPI void evas_common_scale_rgba_mipmap_down_1x2_mmx (DATA32 *src, DATA32 *dst, int src_w, int src_h);
14
15EAPI void evas_common_scale_rgba_in_to_out_clip_smooth_mmx (RGBA_Image *src, RGBA_Image *dst, RGBA_Draw_Context *dc, int src_region_x, int src_region_y, int src_region_w, int src_region_h, int dst_region_x, int dst_region_y, int dst_region_w, int dst_region_h); 4EAPI void evas_common_scale_rgba_in_to_out_clip_smooth_mmx (RGBA_Image *src, RGBA_Image *dst, RGBA_Draw_Context *dc, int src_region_x, int src_region_y, int src_region_w, int src_region_h, int dst_region_x, int dst_region_y, int dst_region_w, int dst_region_h);
16EAPI void evas_common_scale_rgba_in_to_out_clip_smooth_c (RGBA_Image *src, RGBA_Image *dst, RGBA_Draw_Context *dc, int src_region_x, int src_region_y, int src_region_w, int src_region_h, int dst_region_x, int dst_region_y, int dst_region_w, int dst_region_h); 5EAPI void evas_common_scale_rgba_in_to_out_clip_smooth_c (RGBA_Image *src, RGBA_Image *dst, RGBA_Draw_Context *dc, int src_region_x, int src_region_y, int src_region_w, int src_region_h, int dst_region_x, int dst_region_y, int dst_region_w, int dst_region_h);
17 6
18
19#endif /* _EVAS_SCALE_SMOOTH_H */ 7#endif /* _EVAS_SCALE_SMOOTH_H */
diff --git a/legacy/evas/src/lib/include/evas_options.h b/legacy/evas/src/lib/include/evas_options.h
index f6739c0937..b15221c15e 100644
--- a/legacy/evas/src/lib/include/evas_options.h
+++ b/legacy/evas/src/lib/include/evas_options.h
@@ -37,33 +37,15 @@
37/*#define BUILD_CONVERT_32_RGB_ROT0*/ 37/*#define BUILD_CONVERT_32_RGB_ROT0*/
38/*#define BUILD_CONVERT_32_RGB_ROT270*/ 38/*#define BUILD_CONVERT_32_RGB_ROT270*/
39 39
40/*#define BUILD_SCALE_SAMPLE*/
41/*#define BUILD_SCALE_SMOOTH*/
42/*#define BUILD_SCALE_TRILINEAR*/
43
44/*#define BUILD_MMX*/ 40/*#define BUILD_MMX*/
45/*#define BUILD_SSE*/
46/*#define BUILD_SSE3*/ 41/*#define BUILD_SSE3*/
47/*#define BUILD_C*/
48 42
49/*#define BUILD_LOADER_PNG*/ 43/*#define BUILD_LOADER_PNG*/
50/*#define BUILD_LOADER_JPEG*/ 44/*#define BUILD_LOADER_JPEG*/
51/*#define BUILD_LOADER_EET*/ 45/*#define BUILD_LOADER_EET*/
52/*#define BUILD_LOADER_EDB*/
53 46
54/*#define BUILD_FMEMOPEN*/ 47/*#define BUILD_FMEMOPEN*/
55 48
56/* check in that the user configured it right */
57#ifndef BUILD_MMX
58# ifndef BUILD_SSE3
59# ifndef BUILD_SSE
60# ifndef BUILD_C
61# error "Please Read the README"
62 #endif
63# endif
64# endif
65#endif
66
67#define DIRECT_SCALE 49#define DIRECT_SCALE
68 50
69#endif 51#endif