Author: post
Date: 2012-01-31 17:23:22 +0100 (Tue, 31 Jan 2012)
New Revision: 4114

Modified:
   trunk/plugins/dcp/dcp.c
Log:
Enable SSE4 DCP code after test, and DISable AVX code - seems like 
miscompilation.

Modified: trunk/plugins/dcp/dcp.c
===================================================================
--- trunk/plugins/dcp/dcp.c     2012-01-31 16:22:10 UTC (rev 4113)
+++ trunk/plugins/dcp/dcp.c     2012-01-31 16:23:22 UTC (rev 4114)
@@ -471,7 +471,7 @@
        pre_cache_tables(t->dcp);
        if (tmp->pixelsize == 4  && (rs_detect_cpu_features() & 
RS_CPU_FLAG_SSE2) && !t->dcp->read_out_curve)
        {
-               if ((rs_detect_cpu_features() & RS_CPU_FLAG_AVX) && 
render_AVX(t))
+               if (FALSE && (rs_detect_cpu_features() & RS_CPU_FLAG_AVX) && 
render_AVX(t))
                {
                        /* AVX routine renders 4 pixels in parallel, but any 
remaining must be */
                        /* calculated using C routines */
@@ -481,6 +481,16 @@
                                render(t);
                        }
                } 
+               else if ((rs_detect_cpu_features() & RS_CPU_FLAG_SSE4_1) && 
render_SSE4(t))
+               {
+                       /* SSE4 routine renders 4 pixels in parallel, but any 
remaining must be */
+                       /* calculated using C routines */
+                       if (tmp->w & 3)
+                       {
+                               t->start_x = tmp->w - (tmp->w & 3);
+                               render(t);
+                       }
+               } 
                else if (render_SSE2(t))
                {
                        /* SSE2 routine renders 4 pixels in parallel, but any 
remaining must be */


_______________________________________________
Rawstudio-commit mailing list
[email protected]
http://rawstudio.org/cgi-bin/mailman/listinfo/rawstudio-commit

Reply via email to