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

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

?? predict-a.asm

?? 從服務器上下外的 x264編碼器最新的源碼
?? ASM
?? 第 1 頁 / 共 3 頁
字號:
%endmacro%define PALIGNR PALIGNR_MMXPREDICT_FILTER mmxext%define PALIGNR PALIGNR_SSSE3PREDICT_FILTER ssse3;-----------------------------------------------------------------------------; void predict_8x8_v_mmxext( uint8_t *src, uint8_t *edge );-----------------------------------------------------------------------------cglobal predict_8x8_v_mmxext, 2,2    movq        mm0, [r1+16]    STORE8x8    mm0, mm0    RET;-----------------------------------------------------------------------------; void predict_8x8_h_mmxext( uint8_t *src, uint8_t edge[33] );-----------------------------------------------------------------------------INIT_MMXcglobal predict_8x8_h_mmxext, 2,2    movu   m3, [r1+7]    mova   m7, m3    punpckhbw m3, m3    punpcklbw m7, m7    pshufw m0, m3, 0xff    pshufw m1, m3, 0xaa    pshufw m2, m3, 0x55    pshufw m3, m3, 0x00    pshufw m4, m7, 0xff    pshufw m5, m7, 0xaa    pshufw m6, m7, 0x55    pshufw m7, m7, 0x00%assign n 0%rep 8    mova [r0+n*FDEC_STRIDE], m %+ n%assign n n+1%endrep    RET;-----------------------------------------------------------------------------; void predict_8x8_dc_mmxext( uint8_t *src, uint8_t *edge );;-----------------------------------------------------------------------------cglobal predict_8x8_dc_mmxext, 2,2    pxor        mm0, mm0    pxor        mm1, mm1    psadbw      mm0, [r1+7]    psadbw      mm1, [r1+16]    paddw       mm0, [pw_8 GLOBAL]    paddw       mm0, mm1    psrlw       mm0, 4    pshufw      mm0, mm0, 0    packuswb    mm0, mm0    STORE8x8    mm0, mm0    RET;-----------------------------------------------------------------------------; void predict_8x8_dc_top_mmxext( uint8_t *src, uint8_t *edge );;-----------------------------------------------------------------------------%macro PRED8x8_DC 2cglobal %1, 2,2    pxor        mm0, mm0    psadbw      mm0, [r1+%2]    paddw       mm0, [pw_4 GLOBAL]    psrlw       mm0, 3    pshufw      mm0, mm0, 0    packuswb    mm0, mm0    STORE8x8    mm0, mm0    RET%endmacroPRED8x8_DC predict_8x8_dc_top_mmxext, 16PRED8x8_DC predict_8x8_dc_left_mmxext, 7%ifndef ARCH_X86_64; sse2 is faster even on amd, so there's no sense in spending exe size on these; functions if we know sse2 is available.;-----------------------------------------------------------------------------; void predict_8x8_ddl_mmxext( uint8_t *src, uint8_t *edge );-----------------------------------------------------------------------------cglobal predict_8x8_ddl_mmxext, 2,2    movq        mm5, [r1+16]    movq        mm2, [r1+17]    movq        mm3, [r1+23]    movq        mm4, [r1+25]    movq        mm1, mm5    psllq       mm1, 8    PRED8x8_LOWPASS mm0, mm1, mm2, mm5, mm7    PRED8x8_LOWPASS mm1, mm3, mm4, [r1+24], mm6%assign Y 7%rep 6    movq        [r0+Y*FDEC_STRIDE], mm1    movq        mm2, mm0    psllq       mm1, 8    psrlq       mm2, 56    psllq       mm0, 8    por         mm1, mm2%assign Y (Y-1)%endrep    movq        [r0+Y*FDEC_STRIDE], mm1    psllq       mm1, 8    psrlq       mm0, 56    por         mm1, mm0%assign Y (Y-1)    movq        [r0+Y*FDEC_STRIDE], mm1    RET;-----------------------------------------------------------------------------; void predict_8x8_ddr_mmxext( uint8_t *src, uint8_t *edge );-----------------------------------------------------------------------------cglobal predict_8x8_ddr_mmxext, 2,2    movq        mm1, [r1+7]    movq        mm2, [r1+9]    movq        mm3, [r1+15]    movq        mm4, [r1+17]    PRED8x8_LOWPASS mm0, mm1, mm2, [r1+8], mm7    PRED8x8_LOWPASS mm1, mm3, mm4, [r1+16], mm6%assign Y 7%rep 6    movq        [r0+Y*FDEC_STRIDE], mm0    movq        mm2, mm1    psrlq       mm0, 8    psllq       mm2, 56    psrlq       mm1, 8    por         mm0, mm2%assign Y (Y-1)%endrep    movq        [r0+Y*FDEC_STRIDE], mm0    psrlq       mm0, 8    psllq       mm1, 56    por         mm0, mm1%assign Y (Y-1)    movq        [r0+Y*FDEC_STRIDE], mm0    RET;-----------------------------------------------------------------------------; void predict_8x8_hu_mmxext( uint8_t *src, uint8_t *edge );-----------------------------------------------------------------------------%define PALIGNR PALIGNR_MMXcglobal predict_8x8_hu_mmxext, 2,2    movq    mm1, [r1+7]         ; l0 l1 l2 l3 l4 l5 l6 l7    add      r0, 4*FDEC_STRIDE    pshufw  mm0, mm1, 00011011b ; l6 l7 l4 l5 l2 l3 l0 l1    psllq   mm1, 56             ; l7 .. .. .. .. .. .. ..    movq    mm2, mm0    psllw   mm0, 8    psrlw   mm2, 8    por     mm2, mm0            ; l7 l6 l5 l4 l3 l2 l1 l0    movq    mm3, mm2    movq    mm4, mm2    movq    mm5, mm2    psrlq   mm2, 8    psrlq   mm3, 16    por     mm2, mm1            ; l7 l7 l6 l5 l4 l3 l2 l1    punpckhbw mm1, mm1    por     mm3, mm1            ; l7 l7 l7 l6 l5 l4 l3 l2    pavgb   mm4, mm2    PRED8x8_LOWPASS mm1, mm3, mm5, mm2, mm6    movq    mm5, mm4    punpcklbw mm4, mm1          ; p4 p3 p2 p1    punpckhbw mm5, mm1          ; p8 p7 p6 p5    movq    mm6, mm5    movq    mm7, mm5    movq    mm0, mm5    PALIGNR mm5, mm4, 2, mm1    pshufw  mm1, mm6, 11111001b    PALIGNR mm6, mm4, 4, mm2    pshufw  mm2, mm7, 11111110b    PALIGNR mm7, mm4, 6, mm3    pshufw  mm3, mm0, 11111111b    movq   [r0-4*FDEC_STRIDE], mm4    movq   [r0-3*FDEC_STRIDE], mm5    movq   [r0-2*FDEC_STRIDE], mm6    movq   [r0-1*FDEC_STRIDE], mm7    movq   [r0+0*FDEC_STRIDE], mm0    movq   [r0+1*FDEC_STRIDE], mm1    movq   [r0+2*FDEC_STRIDE], mm2    movq   [r0+3*FDEC_STRIDE], mm3    RET;-----------------------------------------------------------------------------; void predict_8x8_vr_core_mmxext( uint8_t *src, uint8_t *edge );-----------------------------------------------------------------------------; fills only some pixels:; f01234567; 0........; 1,,,,,,,,; 2 .......; 3 ,,,,,,,; 4  ......; 5  ,,,,,,; 6   .....; 7   ,,,,,cglobal predict_8x8_vr_core_mmxext, 2,2    movq        mm2, [r1+16]    movq        mm3, [r1+15]    movq        mm1, [r1+14]    movq        mm4, mm3    pavgb       mm3, mm2    PRED8x8_LOWPASS mm0, mm1, mm2, mm4, mm7%assign Y 0%rep 3    movq        [r0+ Y   *FDEC_STRIDE], mm3    movq        [r0+(Y+1)*FDEC_STRIDE], mm0    psllq       mm3, 8    psllq       mm0, 8%assign Y (Y+2)%endrep    movq        [r0+ Y   *FDEC_STRIDE], mm3    movq        [r0+(Y+1)*FDEC_STRIDE], mm0    RET;-----------------------------------------------------------------------------; void predict_8x8c_p_core_mmxext( uint8_t *src, int i00, int b, int c );-----------------------------------------------------------------------------cglobal predict_8x8c_p_core_mmxext, 1,2    LOAD_PLANE_ARGS    movq        mm1, mm2    pmullw      mm2, [pw_3210 GLOBAL]    psllw       mm1, 2    paddsw      mm0, mm2        ; mm0 = {i+0*b, i+1*b, i+2*b, i+3*b}    paddsw      mm1, mm0        ; mm1 = {i+4*b, i+5*b, i+6*b, i+7*b}    mov         r1d, 8ALIGN 4.loop:    movq        mm5, mm0    movq        mm6, mm1    psraw       mm5, 5    psraw       mm6, 5    packuswb    mm5, mm6    movq        [r0], mm5    paddsw      mm0, mm4    paddsw      mm1, mm4    add         r0, FDEC_STRIDE    dec         r1d    jg          .loop    REP_RET;-----------------------------------------------------------------------------; void predict_16x16_p_core_mmxext( uint8_t *src, int i00, int b, int c );-----------------------------------------------------------------------------cglobal predict_16x16_p_core_mmxext, 1,2    LOAD_PLANE_ARGS    movq        mm5, mm2    movq        mm1, mm2    pmullw      mm5, [pw_3210 GLOBAL]    psllw       mm2, 3    psllw       mm1, 2    movq        mm3, mm2    paddsw      mm0, mm5        ; mm0 = {i+ 0*b, i+ 1*b, i+ 2*b, i+ 3*b}    paddsw      mm1, mm0        ; mm1 = {i+ 4*b, i+ 5*b, i+ 6*b, i+ 7*b}    paddsw      mm2, mm0        ; mm2 = {i+ 8*b, i+ 9*b, i+10*b, i+11*b}    paddsw      mm3, mm1        ; mm3 = {i+12*b, i+13*b, i+14*b, i+15*b}    mov         r1d, 16ALIGN 4.loop:    movq        mm5, mm0    movq        mm6, mm1    psraw       mm5, 5    psraw       mm6, 5    packuswb    mm5, mm6    movq        [r0], mm5    movq        mm5, mm2    movq        mm6, mm3    psraw       mm5, 5    psraw       mm6, 5    packuswb    mm5, mm6    movq        [r0+8], mm5    paddsw      mm0, mm4    paddsw      mm1, mm4    paddsw      mm2, mm4    paddsw      mm3, mm4    add         r0, FDEC_STRIDE    dec         r1d    jg          .loop    REP_RET%endif ; !ARCH_X86_64;-----------------------------------------------------------------------------; void predict_8x8_ddl_sse2( uint8_t *src, uint8_t *edge );-----------------------------------------------------------------------------cglobal predict_8x8_ddl_sse2, 2,2    movdqa      xmm3, [r1+16]    movdqu      xmm2, [r1+17]    movdqa      xmm1, xmm3    pslldq      xmm1, 1    PRED8x8_LOWPASS_XMM xmm0, xmm1, xmm2, xmm3, xmm4%assign Y 0%rep 8    psrldq      xmm0, 1    movq        [r0+Y*FDEC_STRIDE], xmm0%assign Y (Y+1)%endrep    RET;-----------------------------------------------------------------------------; void predict_8x8_ddr_sse2( uint8_t *src, uint8_t *edge );-----------------------------------------------------------------------------cglobal predict_8x8_ddr_sse2, 2,2    movdqu      xmm3, [r1+8]    movdqu      xmm1, [r1+7]    movdqa      xmm2, xmm3    psrldq      xmm2, 1    PRED8x8_LOWPASS_XMM xmm0, xmm1, xmm2, xmm3, xmm4    movdqa      xmm1, xmm0    psrldq      xmm1, 1%assign Y 7%rep 3    movq        [r0+Y*FDEC_STRIDE], xmm0    movq        [r0+(Y-1)*FDEC_STRIDE], xmm1    psrldq      xmm0, 2    psrldq      xmm1, 2%assign Y (Y-2)%endrep    movq        [r0+1*FDEC_STRIDE], xmm0    movq        [r0+0*FDEC_STRIDE], xmm1    RET;-----------------------------------------------------------------------------; void predict_8x8_vl_sse2( uint8_t *src, uint8_t *edge );-----------------------------------------------------------------------------cglobal predict_8x8_vl_sse2, 2,2    movdqa      xmm4, [r1+16]    movdqa      xmm2, xmm4    movdqa      xmm1, xmm4    movdqa      xmm3, xmm4    psrldq      xmm2, 1    pslldq      xmm1, 1    pavgb       xmm3, xmm2    PRED8x8_LOWPASS_XMM xmm0, xmm1, xmm2, xmm4, xmm5; xmm0: (t0 + 2*t1 + t2 + 2) >> 2; xmm3: (t0 + t1 + 1) >> 1%assign Y 0%rep 3    psrldq      xmm0, 1    movq        [r0+ Y   *FDEC_STRIDE], xmm3    movq        [r0+(Y+1)*FDEC_STRIDE], xmm0    psrldq      xmm3, 1%assign Y (Y+2)%endrep    psrldq      xmm0, 1    movq        [r0+ Y   *FDEC_STRIDE], xmm3    movq        [r0+(Y+1)*FDEC_STRIDE], xmm0    RET;-----------------------------------------------------------------------------; void predict_8x8_vr_sse2( uint8_t *src, uint8_t *edge );-----------------------------------------------------------------------------cglobal predict_8x8_vr_sse2, 2,2,7    movdqu      xmm0, [r1+8]    movdqa      xmm6, [pw_ff00 GLOBAL]    add         r0, 4*FDEC_STRIDE    movdqa      xmm1, xmm0    movdqa      xmm2, xmm0    movdqa      xmm3, xmm0    pslldq      xmm0, 1    pslldq      xmm1, 2    pavgb       xmm2, xmm0    PRED8x8_LOWPASS_XMM xmm4, xmm3, xmm1, xmm0, xmm5    pandn       xmm6, xmm4    movdqa      xmm5, xmm4    psrlw       xmm4, 8    packuswb    xmm6, xmm4    movhlps     xmm4, xmm6    movhps [r0-3*FDEC_STRIDE], xmm5    movhps [r0-4*FDEC_STRIDE], xmm2    psrldq      xmm5, 4    movss       xmm5, xmm6    psrldq      xmm2, 4    movss       xmm2, xmm4%assign Y 3%rep 3    psrldq      xmm5, 1    psrldq      xmm2, 1    movq        [r0+Y*FDEC_STRIDE], xmm5    movq        [r0+(Y-1)*FDEC_STRIDE], xmm2%assign Y (Y-2)%endrep    RET;-----------------------------------------------------------------------------; void predict_8x8_hd_mmxext( uint8_t *src, uint8_t *edge );-----------------------------------------------------------------------------%define PALIGNR PALIGNR_MMXcglobal predict_8x8_hd_mmxext, 2,2    add     r0, 4*FDEC_STRIDE    movq    mm0, [r1]           ; l7 .. .. .. .. .. .. ..    movq    mm1, [r1+8]         ; lt l0 l1 l2 l3 l4 l5 l6    movq    mm2, [r1+16]        ; t7 t6 t5 t4 t3 t2 t1 t0    movq    mm3, mm1            ; lt l0 l1 l2 l3 l4 l5 l6    movq    mm4, mm2            ; t7 t6 t5 t4 t3 t2 t1 t0    PALIGNR mm2, mm1, 7, mm5    ; t6 t5 t4 t3 t2 t1 t0 lt    PALIGNR mm1, mm0, 7, mm6    ; l0 l1 l2 l3 l4 l5 l6 l7    PALIGNR mm4, mm3, 1, mm7    ; t0 lt l0 l1 l2 l3 l4 l5    movq    mm5, mm3    pavgb   mm3, mm1    PRED8x8_LOWPASS mm0, mm4, mm1, mm5, mm7    movq    mm4, mm2    movq    mm1, mm2            ; t6 t5 t4 t3 t2 t1 t0 lt    psrlq   mm4, 16             ; .. .. t6 t5 t4 t3 t2 t1    psrlq   mm1, 8              ; .. t6 t5 t4 t3 t2 t1 t0    PRED8x8_LOWPASS mm6, mm4, mm2, mm1, mm5

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲福利电影网| 一区二区三区加勒比av| 日韩国产欧美一区二区三区| 欧美色手机在线观看| 亚洲一区二区3| 欧美日韩成人一区二区| 亚洲国产精品影院| 9191久久久久久久久久久| 亚洲大片一区二区三区| 欧美一个色资源| 国产麻豆成人精品| 中文字幕一区二区视频| 欧美在线小视频| 国产综合色在线| 有码一区二区三区| 欧美成人一区二区三区在线观看| 国产99精品国产| 一级做a爱片久久| 欧美精品一区二区三区久久久| 成人精品一区二区三区四区| 日韩成人av影视| 欧美国产在线观看| 欧美伦理电影网| 成人免费高清在线| 久久精品噜噜噜成人88aⅴ| 亚洲三级在线观看| 欧美精彩视频一区二区三区| 欧美日韩午夜影院| av高清不卡在线| 极品少妇一区二区| 美女一区二区视频| 香蕉久久夜色精品国产使用方法 | 538在线一区二区精品国产| 成人性视频免费网站| 国产在线一区观看| 久久精品国产网站| 亚洲成人精品影院| 亚洲一区二区av在线| 一区二区三区四区在线免费观看| 国产欧美日韩综合| 久久网站最新地址| 欧美精品一区男女天堂| 2021中文字幕一区亚洲| 日韩视频在线永久播放| 日韩精品一区二区三区在线 | 日本欧美在线观看| 亚洲成av人片一区二区梦乃| 666欧美在线视频| av一区二区三区在线| 91麻豆自制传媒国产之光| 成人午夜免费av| 91色porny在线视频| 日本久久电影网| 欧美日韩免费观看一区二区三区| 欧美在线不卡一区| 日韩精品一区二区三区视频在线观看 | 久久综合九色综合97婷婷| 久久久国产精华| 亚洲无线码一区二区三区| 日韩黄色免费网站| 青娱乐精品视频| 成人免费视频一区二区| 欧美在线制服丝袜| 亚洲精品一区二区三区四区高清| 国产日韩欧美一区二区三区乱码| 一区二区三区四区在线免费观看| 蜜臀av国产精品久久久久| 99久久综合99久久综合网站| 欧美二区三区91| 亚洲欧美日韩久久| 麻豆成人av在线| 在线观看欧美日本| 久久久久久久久一| 美女在线一区二区| 色婷婷香蕉在线一区二区| 国产网站一区二区| 久久99精品久久久久久动态图 | 免费高清成人在线| 日本道色综合久久| 国产精品乱子久久久久| 国内国产精品久久| 欧美一区二区人人喊爽| 亚洲精品乱码久久久久久久久 | 国产91精品久久久久久久网曝门| 欧美最猛性xxxxx直播| 亚洲欧洲精品一区二区三区 | 久久一区二区三区四区| 热久久久久久久| 日韩一区二区在线免费观看| 亚洲va欧美va人人爽午夜 | 91色婷婷久久久久合中文| 国产精品日日摸夜夜摸av| 成人午夜精品在线| 中文字幕av一区 二区| youjizz国产精品| 最新成人av在线| 在线观看日韩电影| 日本欧美一区二区在线观看| 日韩欧美中文一区| 国内国产精品久久| 亚洲视频一区在线| 欧美午夜电影网| 伦理电影国产精品| 欧美大黄免费观看| 国产成人亚洲精品狼色在线| 中文一区在线播放| 欧美日韩一级二级| 激情另类小说区图片区视频区| 久久久不卡网国产精品二区| 91丨九色丨蝌蚪丨老版| 日本在线不卡一区| 久久久久久久久一| 欧美少妇性性性| 国产suv精品一区二区883| 综合久久久久久| 久久影院视频免费| 在线视频中文字幕一区二区| 蜜桃久久久久久| 国产精品久久毛片a| 欧美一区二区视频网站| 波多野结衣91| 国内精品不卡在线| 婷婷开心久久网| 综合在线观看色| 久久久久高清精品| 91精品国产一区二区人妖| 91美女片黄在线观看91美女| 韩国v欧美v日本v亚洲v| 午夜精品一区在线观看| 亚洲人成在线观看一区二区| 久久香蕉国产线看观看99| 欧美高清精品3d| 91国产丝袜在线播放| 91在线视频网址| 91在线国产福利| 91一区二区三区在线观看| 97国产一区二区| www成人在线观看| 成人在线视频一区| 蜜桃视频免费观看一区| 视频一区在线视频| 又紧又大又爽精品一区二区| 亚洲欧美另类久久久精品2019| 日本一区二区三区视频视频| 国产精品乱码一区二三区小蝌蚪| 久久久91精品国产一区二区精品| 久久精品一区蜜桃臀影院| 国产日韩欧美精品在线| 成人免费在线播放视频| 亚洲色图在线播放| 午夜精品久久一牛影视| 久久99日本精品| 成人免费va视频| 91亚洲精品久久久蜜桃网站| 欧美午夜片在线看| 精品久久国产97色综合| 亚洲天堂久久久久久久| 石原莉奈一区二区三区在线观看| 精品一区二区综合| 99热这里都是精品| 日韩欧美国产高清| 国产精品久久久久久久久久免费看| 亚洲精品美腿丝袜| 久久99精品国产.久久久久| 99久久精品免费看国产免费软件| 欧美色综合网站| 久久久不卡网国产精品一区| 一区二区三区色| 国产91精品在线观看| 在线电影院国产精品| 亚洲特黄一级片| 国产精品资源网| 欧美一级艳片视频免费观看| 亚洲最新视频在线播放| 国产91精品精华液一区二区三区| 91精品国产综合久久精品图片| 国产精品久久一卡二卡| 国产乱码精品1区2区3区| 欧美人与z0zoxxxx视频| 亚洲精品美腿丝袜| 99在线精品免费| 亚洲国产高清在线观看视频| 久久激五月天综合精品| 6080日韩午夜伦伦午夜伦| 亚洲激情在线激情| 欧美色爱综合网| 一区二区三区日韩| 色欧美日韩亚洲| 一区二区三区av电影| www.色综合.com| 欧美唯美清纯偷拍| 亚洲色图欧美在线| 91丨porny丨蝌蚪视频| 亚洲欧美在线高清| av一区二区久久| 午夜欧美一区二区三区在线播放| 色综合久久88色综合天天| 欧美精品1区2区| 国产在线精品免费av| 日本一区二区三区久久久久久久久不|