亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? pngvcrd.c

?? A*算法 A*算法 A*算法 A*算法A*算法A*算法
?? C
?? 第 1 頁 / 共 5 頁
字號:

                  mov        edx,mask
                  sal        edx,24        /*make low byte the high byte */

secondloop8:
                  sal        edx,1         /*move high bit to CF */
                  jnc        skip8         /*if CF = 0 */
                  mov        al,[esi]
                  mov        [ebx],al
skip8:
                  inc        esi
                  inc        ebx

                  dec        ecx
                  jnz        secondloop8
end8:
                  emms
               }
            }
            else /* mmx not supported - use modified C routine */
            {
               register unsigned int incr1, initial_val, final_val;
               png_size_t pixel_bytes;
               png_uint_32 i;
               register int disp = png_pass_inc[png_ptr->pass];
               int offset_table[7] = {0, 4, 0, 2, 0, 1, 0};

               pixel_bytes = (png_ptr->row_info.pixel_depth >> 3);
               srcptr = png_ptr->row_buf + 1 + offset_table[png_ptr->pass]*
                  pixel_bytes;
               dstptr = row + offset_table[png_ptr->pass]*pixel_bytes;
               initial_val = offset_table[png_ptr->pass]*pixel_bytes;
               final_val = png_ptr->width*pixel_bytes;
               incr1 = (disp)*pixel_bytes;
               for (i = initial_val; i < final_val; i += incr1)
               {
                  png_memcpy(dstptr, srcptr, pixel_bytes);
                  srcptr += incr1;
                  dstptr += incr1;
               }
            } /* end of else */

            break;
         }       /* end 8 bpp */

         case 16:
         {
            png_bytep srcptr;
            png_bytep dstptr;
            png_uint_32 len;
            int unmask, diff;
            __int64 mask1=0x0101020204040808,
                    mask0=0x1010202040408080;

#if !defined(PNG_1_0_X)
            if ((png_ptr->asm_flags & PNG_ASM_FLAG_MMX_READ_COMBINE_ROW)
                /* && mmx_supported */ )
#else
            if (mmx_supported)
#endif
            {
               srcptr = png_ptr->row_buf + 1;
               dstptr = row;

               unmask = ~mask;
               len     = (png_ptr->width)&~7;
               diff = (png_ptr->width)&7;
               _asm
               {
                  movd       mm7, unmask       /*load bit pattern */
                  psubb      mm6,mm6           /*zero mm6 */
                  punpcklbw  mm7,mm7
                  punpcklwd  mm7,mm7
                  punpckldq  mm7,mm7           /*fill register with 8 masks */

                  movq       mm0,mask0
                  movq       mm1,mask1

                  pand       mm0,mm7
                  pand       mm1,mm7

                  pcmpeqb    mm0,mm6
                  pcmpeqb    mm1,mm6

                  mov        ecx,len           /*load length of line */
                  mov        esi,srcptr        /*load source */
                  mov        ebx,dstptr        /*load dest */
                  cmp        ecx,0             /*lcr */
                  jz         mainloop16end

mainloop16:
                  movq       mm4,[esi]
                  pand       mm4,mm0
                  movq       mm6,mm0
                  movq       mm7,[ebx]
                  pandn      mm6,mm7
                  por        mm4,mm6
                  movq       [ebx],mm4

                  movq       mm5,[esi+8]
                  pand       mm5,mm1
                  movq       mm7,mm1
                  movq       mm6,[ebx+8]
                  pandn      mm7,mm6
                  por        mm5,mm7
                  movq       [ebx+8],mm5

                  add        esi,16            /*inc by 16 bytes processed */
                  add        ebx,16
                  sub        ecx,8             /*dec by 8 pixels processed */

                  ja         mainloop16

mainloop16end:
                  mov        ecx,diff
                  cmp        ecx,0
                  jz         end16

                  mov        edx,mask
                  sal        edx,24            /*make low byte the high byte */
secondloop16:
                  sal        edx,1             /*move high bit to CF */
                  jnc        skip16            /*if CF = 0 */
                  mov        ax,[esi]
                  mov        [ebx],ax
skip16:
                  add        esi,2
                  add        ebx,2

                  dec        ecx
                  jnz        secondloop16
end16:
                  emms
               }
            }
            else /* mmx not supported - use modified C routine */
            {
               register unsigned int incr1, initial_val, final_val;
               png_size_t pixel_bytes;
               png_uint_32 i;
               register int disp = png_pass_inc[png_ptr->pass];
               int offset_table[7] = {0, 4, 0, 2, 0, 1, 0};

               pixel_bytes = (png_ptr->row_info.pixel_depth >> 3);
               srcptr = png_ptr->row_buf + 1 + offset_table[png_ptr->pass]*
                  pixel_bytes;
               dstptr = row + offset_table[png_ptr->pass]*pixel_bytes;
               initial_val = offset_table[png_ptr->pass]*pixel_bytes;
               final_val = png_ptr->width*pixel_bytes;
               incr1 = (disp)*pixel_bytes;
               for (i = initial_val; i < final_val; i += incr1)
               {
                  png_memcpy(dstptr, srcptr, pixel_bytes);
                  srcptr += incr1;
                  dstptr += incr1;
               }
            } /* end of else */

            break;
         }       /* end 16 bpp */

         case 24:
         {
            png_bytep srcptr;
            png_bytep dstptr;
            png_uint_32 len;
            int unmask, diff;

            __int64 mask2=0x0101010202020404,  /*24bpp */
                    mask1=0x0408080810101020,
                    mask0=0x2020404040808080;

            srcptr = png_ptr->row_buf + 1;
            dstptr = row;

            unmask = ~mask;
            len     = (png_ptr->width)&~7;
            diff = (png_ptr->width)&7;

#if !defined(PNG_1_0_X)
            if ((png_ptr->asm_flags & PNG_ASM_FLAG_MMX_READ_COMBINE_ROW)
                /* && mmx_supported */ )
#else
            if (mmx_supported)
#endif
            {
               _asm
               {
                  movd       mm7, unmask       /*load bit pattern */
                  psubb      mm6,mm6           /*zero mm6 */
                  punpcklbw  mm7,mm7
                  punpcklwd  mm7,mm7
                  punpckldq  mm7,mm7           /*fill register with 8 masks */

                  movq       mm0,mask0
                  movq       mm1,mask1
                  movq       mm2,mask2

                  pand       mm0,mm7
                  pand       mm1,mm7
                  pand       mm2,mm7

                  pcmpeqb    mm0,mm6
                  pcmpeqb    mm1,mm6
                  pcmpeqb    mm2,mm6

                  mov        ecx,len           /*load length of line */
                  mov        esi,srcptr        /*load source */
                  mov        ebx,dstptr        /*load dest */
                  cmp        ecx,0
                  jz         mainloop24end

mainloop24:
                  movq       mm4,[esi]
                  pand       mm4,mm0
                  movq       mm6,mm0
                  movq       mm7,[ebx]
                  pandn      mm6,mm7
                  por        mm4,mm6
                  movq       [ebx],mm4


                  movq       mm5,[esi+8]
                  pand       mm5,mm1
                  movq       mm7,mm1
                  movq       mm6,[ebx+8]
                  pandn      mm7,mm6
                  por        mm5,mm7
                  movq       [ebx+8],mm5

                  movq       mm6,[esi+16]
                  pand       mm6,mm2
                  movq       mm4,mm2
                  movq       mm7,[ebx+16]
                  pandn      mm4,mm7
                  por        mm6,mm4
                  movq       [ebx+16],mm6

                  add        esi,24            /*inc by 24 bytes processed */
                  add        ebx,24
                  sub        ecx,8             /*dec by 8 pixels processed */

                  ja         mainloop24

mainloop24end:
                  mov        ecx,diff
                  cmp        ecx,0
                  jz         end24

                  mov        edx,mask
                  sal        edx,24            /*make low byte the high byte */
secondloop24:
                  sal        edx,1             /*move high bit to CF */
                  jnc        skip24            /*if CF = 0 */
                  mov        ax,[esi]
                  mov        [ebx],ax
                  xor        eax,eax
                  mov        al,[esi+2]
                  mov        [ebx+2],al
skip24:
                  add        esi,3
                  add        ebx,3

                  dec        ecx
                  jnz        secondloop24

end24:
                  emms
               }
            }
            else /* mmx not supported - use modified C routine */
            {
               register unsigned int incr1, initial_val, final_val;
               png_size_t pixel_bytes;
               png_uint_32 i;
               register int disp = png_pass_inc[png_ptr->pass];
               int offset_table[7] = {0, 4, 0, 2, 0, 1, 0};

               pixel_bytes = (png_ptr->row_info.pixel_depth >> 3);
               srcptr = png_ptr->row_buf + 1 + offset_table[png_ptr->pass]*
                  pixel_bytes;
               dstptr = row + offset_table[png_ptr->pass]*pixel_bytes;
               initial_val = offset_table[png_ptr->pass]*pixel_bytes;
               final_val = png_ptr->width*pixel_bytes;
               incr1 = (disp)*pixel_bytes;
               for (i = initial_val; i < final_val; i += incr1)
               {
                  png_memcpy(dstptr, srcptr, pixel_bytes);
                  srcptr += incr1;
                  dstptr += incr1;
               }
            } /* end of else */

            break;
         }       /* end 24 bpp */

         case 32:
         {
            png_bytep srcptr;
            png_bytep dstptr;
            png_uint_32 len;
            int unmask, diff;

            __int64 mask3=0x0101010102020202,  /*32bpp */
                    mask2=0x0404040408080808,
                    mask1=0x1010101020202020,
                    mask0=0x4040404080808080;

            srcptr = png_ptr->row_buf + 1;
            dstptr = row;

            unmask = ~mask;
            len     = (png_ptr->width)&~7;
            diff = (png_ptr->width)&7;

#if !defined(PNG_1_0_X)
            if ((png_ptr->asm_flags & PNG_ASM_FLAG_MMX_READ_COMBINE_ROW)
                /* && mmx_supported */ )
#else
            if (mmx_supported)
#endif
            {
               _asm
               {
                  movd       mm7, unmask       /*load bit pattern */
                  psubb      mm6,mm6           /*zero mm6 */
                  punpcklbw  mm7,mm7
                  punpcklwd  mm7,mm7
                  punpckldq  mm7,mm7           /*fill register with 8 masks */

                  movq       mm0,mask0
                  movq       mm1,mask1
                  movq       mm2,mask2
                  movq       mm3,mask3

                  pand       mm0,mm7
                  pand       mm1,mm7
                  pand       mm2,mm7
                  pand       mm3,mm7

                  pcmpeqb    mm0,mm6
                  pcmpeqb    mm1,mm6
                  pcmpeqb    mm2,mm6
                  pcmpeqb    mm3,mm6

                  mov        ecx,len           /*load length of line */
                  mov        esi,srcptr        /*load source */
                  mov        ebx,dstptr        /*load dest */

                  cmp        ecx,0             /*lcr */
                  jz         mainloop32end

mainloop32:
                  movq       mm4,[esi]
                  pand       mm4,mm0
                  movq       mm6,mm0
                  movq       mm7,[ebx]
                  pandn      mm6,mm7
                  por        mm4,mm6
                  movq       [ebx],mm4

                  movq       mm5,[esi+8]
                  pand       mm5,mm1

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区av在线| 欧美午夜精品免费| 青青草精品视频| 喷白浆一区二区| 午夜电影网一区| 日本成人在线不卡视频| 日本系列欧美系列| 久久成人羞羞网站| 国产美女一区二区三区| 成人不卡免费av| 色偷偷一区二区三区| 欧美日韩黄色一区二区| 69堂精品视频| 久久久久久9999| 国产精品久久久久久久久果冻传媒 | 欧美巨大另类极品videosbest | 高清日韩电视剧大全免费| 高清日韩电视剧大全免费| 97se亚洲国产综合自在线 | 韩国精品主播一区二区在线观看| 美女高潮久久久| 国产成人鲁色资源国产91色综| 不卡电影一区二区三区| 欧美日韩国产大片| 久久久www成人免费毛片麻豆| 亚洲国产激情av| 亚洲国产日韩a在线播放| 全国精品久久少妇| 国产成人亚洲综合a∨婷婷| 成人99免费视频| 91精品婷婷国产综合久久| 国产欧美日韩在线看| 一级日本不卡的影视| 蜜臀精品一区二区三区在线观看 | 亚洲一区二区精品视频| 久久精品久久99精品久久| 成人a区在线观看| 欧美一区二区黄色| 亚洲日韩欧美一区二区在线| 日本三级亚洲精品| 91在线精品秘密一区二区| 日韩三区在线观看| 亚洲欧美日韩国产成人精品影院| 蜜臀av性久久久久av蜜臀妖精| 国产成人综合视频| 欧美一区二区三区免费视频| 中文字幕欧美一区| 国模冰冰炮一区二区| 欧美日本国产一区| 亚洲精品亚洲人成人网| 国产精品主播直播| 91麻豆精品国产91久久久更新时间 | 一区二区三区毛片| 成人午夜在线视频| 欧美成人精品高清在线播放| 亚洲午夜一区二区三区| 91免费视频观看| 欧美激情综合五月色丁香| 精品一二线国产| 日韩一区二区电影| 五月天网站亚洲| 欧美偷拍一区二区| 一区二区欧美在线观看| 91亚洲永久精品| 最新高清无码专区| 成人自拍视频在线| 中文在线资源观看网站视频免费不卡| 男男视频亚洲欧美| 欧美日韩1区2区| 天堂在线亚洲视频| 制服丝袜在线91| 日精品一区二区三区| 欧美区一区二区三区| 偷拍一区二区三区| 欧美一区欧美二区| 日本不卡中文字幕| 91精品国产欧美日韩| 石原莉奈在线亚洲二区| 日韩一级高清毛片| 国产在线播放一区三区四| 欧美成人精品二区三区99精品| 久久精品国产99国产| 久久综合久久99| 成人av午夜电影| 亚洲免费毛片网站| 欧美日韩亚洲不卡| 免费成人深夜小野草| 久久综合精品国产一区二区三区| 国产经典欧美精品| 亚洲欧洲成人av每日更新| 在线看不卡av| 免费在线成人网| 久久精品人人做人人综合| 国产成人高清在线| 亚洲精品国产精品乱码不99| 欧美日韩在线三级| 精品在线观看视频| 中文字幕一区二区三区蜜月 | 国产亚洲欧美一区在线观看| 成人丝袜高跟foot| 夜夜爽夜夜爽精品视频| 日韩久久免费av| av网站免费线看精品| 婷婷成人综合网| 久久久亚洲精华液精华液精华液| 91在线看国产| 狠狠色综合播放一区二区| 国产精品日日摸夜夜摸av| 欧美伊人精品成人久久综合97 | 91激情在线视频| 蜜桃av一区二区| 亚洲特黄一级片| 欧美一卡二卡在线观看| 岛国一区二区在线观看| 亚洲综合在线观看视频| 久久久久国色av免费看影院| 欧美做爰猛烈大尺度电影无法无天| 九一九一国产精品| 亚洲国产精品久久久久婷婷884| 久久精品一区二区| 日韩一区二区中文字幕| 一道本成人在线| 国产精品一区二区黑丝| 午夜久久久久久久久久一区二区| 中文字幕欧美激情| 精品少妇一区二区三区免费观看| 在线亚洲+欧美+日本专区| 成人综合在线观看| 激情亚洲综合在线| 午夜电影网亚洲视频| 亚洲精品国产视频| 中文字幕欧美一| 国产欧美综合在线观看第十页| 91精品国产综合久久久久 | 亚洲成av人片一区二区三区 | 欧美日韩二区三区| 欧洲一区在线电影| 91在线精品一区二区| 成人黄色在线网站| 国产成人综合在线| 国产精品一区二区免费不卡| 久久精品国产澳门| 精品一区二区精品| 麻豆国产精品一区二区三区| 日本va欧美va瓶| 奇米精品一区二区三区在线观看| 五月天中文字幕一区二区| 亚瑟在线精品视频| 日韩高清中文字幕一区| 亚洲a一区二区| 天天操天天综合网| 日本成人在线电影网| 九一九一国产精品| 国产一区二区福利| 成人禁用看黄a在线| 国产成人av电影免费在线观看| 丰满少妇在线播放bd日韩电影| 国产激情一区二区三区四区| 国产成人精品亚洲777人妖| 成人综合婷婷国产精品久久蜜臀| 成人在线一区二区三区| 99精品国产91久久久久久| 色婷婷亚洲精品| 7777精品伊人久久久大香线蕉的 | 亚洲人成7777| 亚洲综合色区另类av| 日韩激情视频在线观看| 美女高潮久久久| 成人国产在线观看| 色猫猫国产区一区二在线视频| 欧美日韩国产一级| 久久这里只有精品6| 国产精品萝li| 亚洲午夜免费电影| 免费成人av在线播放| 成人一区二区三区在线观看| 色婷婷综合久久久久中文一区二区| 色94色欧美sute亚洲线路二| 欧美日韩在线播放三区四区| 日韩视频中午一区| 国产精品美女久久久久久久网站| 亚洲国产综合在线| 国产尤物一区二区在线 | 图片区小说区国产精品视频| 狠狠色丁香久久婷婷综合丁香| 国产精品一二一区| 在线观看91精品国产入口| 日韩你懂的在线观看| 亚洲精品日日夜夜| 国产一区91精品张津瑜| 欧美视频一区二区在线观看| 精品电影一区二区三区| 最新欧美精品一区二区三区| 日本欧美一区二区在线观看| 国产成人综合在线播放| 欧美美女网站色| 亚洲日本在线天堂| 国产麻豆日韩欧美久久| 欧美剧情电影在线观看完整版免费励志电影| 精品国产露脸精彩对白|