src/video/SDL_blit_A.c
changeset 2120 2c835d58faad
parent 2101 c4e0afbcf1f6
child 2132 46648dc418ec
equal deleted inserted replaced
2119:9341a884a4d9 2120:2c835d58faad
   385     movq_r2r(mm7, mm0);         /* 00FFFFFF -> mm0 */
   385     movq_r2r(mm7, mm0);         /* 00FFFFFF -> mm0 */
   386     packsswb_r2r(mm6, mm0);     /* 00000FFF -> mm0 (channel mask) */
   386     packsswb_r2r(mm6, mm0);     /* 00000FFF -> mm0 (channel mask) */
   387     packsswb_r2r(mm6, mm3);     /* 0000FFFF -> mm3 */
   387     packsswb_r2r(mm6, mm3);     /* 0000FFFF -> mm3 */
   388     pxor_r2r(mm0, mm3);         /* 0000F000 -> mm3 (~channel mask) */
   388     pxor_r2r(mm0, mm3);         /* 0000F000 -> mm3 (~channel mask) */
   389     /* get alpha channel shift */
   389     /* get alpha channel shift */
       
   390     /* *INDENT-OFF* */
   390     __asm__ __volatile__ (
   391     __asm__ __volatile__ (
   391         "movd %0, %%mm5"
   392         "movd %0, %%mm5"
   392         : : "rm" ((Uint32) sf->Ashift) ); /* Ashift -> mm5 */
   393         : : "rm" ((Uint32) sf->Ashift) ); /* Ashift -> mm5 */
       
   394     /* *INDENT-ON* */
   393 
   395 
   394     while (height--) {
   396     while (height--) {
   395 	    /* *INDENT-OFF* */
   397 	    /* *INDENT-OFF* */
   396 	    DUFFS_LOOP4({
   398 	    DUFFS_LOOP4({
   397 		Uint32 alpha = *srcp & amask;
   399 		Uint32 alpha = *srcp & amask;