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

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

?? dct-a.asm

?? 絕對好的源碼
?? ASM
?? 第 1 頁 / 共 2 頁
字號:
;*****************************************************************************;* dct.asm: h264 encoder library;*****************************************************************************;* Copyright (C) 2003 x264 project;* $Id: dct.asm,v 1.1 2004/06/03 19:27:07 fenrir Exp $;*;* Authors: Min Chen <chenm001.163.com> (converted to nasm);*          Laurent Aimar <fenrir@via.ecp.fr> (initial version);*          Christian Heine <sennindemokrit@gmx.net> (dct8/idct8 functions);*;* This program is free software; you can redistribute it and/or modify;* it under the terms of the GNU General Public License as published by;* the Free Software Foundation; either version 2 of the License, or;* (at your option) any later version.;*;* This program is distributed in the hope that it will be useful,;* but WITHOUT ANY WARRANTY; without even the implied warranty of;* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the;* GNU General Public License for more details.;*;* You should have received a copy of the GNU General Public License;* along with this program; if not, write to the Free Software;* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.;*****************************************************************************;*****************************************************************************;*                                                                           *;*  Revision history:                                                        *;*                                                                           *;*  2004.04.28  portab all 4x4 function to nasm (CM)                         *;*  2005.08.24  added mmxext optimized dct8/idct8 functions (CH)             *;*                                                                           *;*****************************************************************************BITS 32;=============================================================================; Macros and other preprocessor constants;=============================================================================%include "i386inc.asm"%macro MMX_ZERO 1    pxor    %1, %1%endmacro%macro MMX_LOAD_DIFF_4P 5    movd        %1, %4    punpcklbw   %1, %3    movd        %2, %5    punpcklbw   %2, %3    psubw       %1, %2%endmacro%macro MMX_SUMSUB_BA 2    paddw   %1, %2    paddw   %2, %2    psubw   %2, %1%endmacro%macro MMX_SUMSUB_BADC 4    paddw   %1, %2    paddw   %3, %4    paddw   %2, %2    paddw   %4, %4    psubw   %2, %1    psubw   %4, %3%endmacro%macro MMX_SUMSUB2_AB 3    movq    %3, %1    paddw   %1, %1    paddw   %1, %2    psubw   %3, %2    psubw   %3, %2%endmacro%macro MMX_SUMSUBD2_AB 4    movq    %4, %1    movq    %3, %2    psraw   %2, 1    psraw   %4, 1    paddw   %1, %2    psubw   %4, %3%endmacro%macro SBUTTERFLYwd 3    movq        %3, %1    punpcklwd   %1, %2    punpckhwd   %3, %2%endmacro%macro SBUTTERFLYdq 3    movq        %3, %1    punpckldq   %1, %2    punpckhdq   %3, %2%endmacro;-----------------------------------------------------------------------------; input ABCD output ADTC;-----------------------------------------------------------------------------%macro MMX_TRANSPOSE 5    SBUTTERFLYwd %1, %2, %5    SBUTTERFLYwd %3, %4, %2    SBUTTERFLYdq %1, %3, %4    SBUTTERFLYdq %5, %2, %3%endmacro%macro MMX_STORE_DIFF_4P 5    paddw       %1, %3    psraw       %1, 6    movd        %2, %5    punpcklbw   %2, %4    paddsw      %1, %2    packuswb    %1, %1    movd        %5, %1%endmacro;=============================================================================; Local Data (Read Only);=============================================================================SECTION_RODATA;-----------------------------------------------------------------------------; Various memory constants (trigonometric values or rounding values);-----------------------------------------------------------------------------ALIGN 16x264_mmx_1:        dw  1,  1,  1,  1x264_mmx_32:       dw 32, 32, 32, 32x264_mmx_PPNN:     dw  1,  1, -1, -1x264_mmx_PNPN:     dw  1, -1,  1, -1 x264_mmx_PNNP:     dw  1, -1, -1,  1 x264_mmx_PPPN:     dw  1,  1,  1, -1 x264_mmx_PPNP:     dw  1,  1, -1,  1 x264_mmx_2121:     dw  2,  1,  2,  1 x264_mmx_p2n2p1p1: dw  2, -2,  1,  1;=============================================================================; Code;=============================================================================SECTION .textcglobal x264_dct4x4dc_mmxALIGN 16;-----------------------------------------------------------------------------;   void __cdecl x264_dct4x4dc_mmx( int16_t d[4][4] );-----------------------------------------------------------------------------x264_dct4x4dc_mmx:    mov     eax,        [esp+ 4]    movq    mm0,        [eax+ 0]    movq    mm1,        [eax+ 8]    movq    mm2,        [eax+16]    movq    mm3,        [eax+24]    picpush ebx    picgetgot ebx    MMX_SUMSUB_BADC     mm1, mm0, mm3, mm2          ; mm1=s01  mm0=d01  mm3=s23  mm2=d23    MMX_SUMSUB_BADC     mm3, mm1, mm2, mm0          ; mm3=s01+s23  mm1=s01-s23  mm2=d01+d23  mm0=d01-d23    MMX_TRANSPOSE       mm3, mm1, mm0, mm2, mm4     ; in: mm3, mm1, mm0, mm2  out: mm3, mm2, mm4, mm0     MMX_SUMSUB_BADC     mm2, mm3, mm0, mm4          ; mm2=s01  mm3=d01  mm0=s23  mm4=d23    MMX_SUMSUB_BADC     mm0, mm2, mm4, mm3          ; mm0=s01+s23  mm2=s01-s23  mm4=d01+d23  mm3=d01-d23    movq    mm6,        [x264_mmx_1 GOT_ebx]    paddw   mm0,        mm6    paddw   mm2,        mm6    psraw   mm0,        1    movq    [eax+ 0],   mm0    psraw   mm2,        1    movq    [eax+ 8],   mm2    paddw   mm3,        mm6    paddw   mm4,        mm6    psraw   mm3,        1    movq    [eax+16],   mm3    psraw   mm4,        1    movq    [eax+24],   mm4    picpop  ebx    retcglobal x264_idct4x4dc_mmxALIGN 16;-----------------------------------------------------------------------------;   void __cdecl x264_idct4x4dc_mmx( int16_t d[4][4] );-----------------------------------------------------------------------------x264_idct4x4dc_mmx:    mov     eax, [esp+ 4]    movq    mm0, [eax+ 0]    movq    mm1, [eax+ 8]    movq    mm2, [eax+16]    movq    mm3, [eax+24]    MMX_SUMSUB_BADC     mm1, mm0, mm3, mm2          ; mm1=s01  mm0=d01  mm3=s23  mm2=d23    MMX_SUMSUB_BADC     mm3, mm1, mm2, mm0          ; mm3=s01+s23 mm1=s01-s23 mm2=d01+d23 mm0=d01-d23    MMX_TRANSPOSE       mm3, mm1, mm0, mm2, mm4     ; in: mm3, mm1, mm0, mm2  out: mm3, mm2, mm4, mm0     MMX_SUMSUB_BADC     mm2, mm3, mm0, mm4          ; mm2=s01  mm3=d01  mm0=s23  mm4=d23    MMX_SUMSUB_BADC     mm0, mm2, mm4, mm3          ; mm0=s01+s23  mm2=s01-s23  mm4=d01+d23  mm3=d01-d23    movq    [eax+ 0],   mm0    movq    [eax+ 8],   mm2    movq    [eax+16],   mm3    movq    [eax+24],   mm4    retcglobal x264_sub4x4_dct_mmxALIGN 16;-----------------------------------------------------------------------------;   void __cdecl x264_sub4x4_dct_mmx( int16_t dct[4][4], uint8_t *pix1, uint8_t *pix2 );-----------------------------------------------------------------------------x264_sub4x4_dct_mmx:    mov     eax, [esp+ 8]   ; pix1    mov     ecx, [esp+12]   ; pix2    MMX_ZERO    mm7    ; Load 4 lines    MMX_LOAD_DIFF_4P    mm0, mm6, mm7, [eax+0*FENC_STRIDE], [ecx+0*FDEC_STRIDE]    MMX_LOAD_DIFF_4P    mm1, mm6, mm7, [eax+1*FENC_STRIDE], [ecx+1*FDEC_STRIDE]    MMX_LOAD_DIFF_4P    mm2, mm6, mm7, [eax+2*FENC_STRIDE], [ecx+2*FDEC_STRIDE]    MMX_LOAD_DIFF_4P    mm3, mm6, mm7, [eax+3*FENC_STRIDE], [ecx+3*FDEC_STRIDE]    MMX_SUMSUB_BADC     mm3, mm0, mm2, mm1          ; mm3=s03  mm0=d03  mm2=s12  mm1=d12    MMX_SUMSUB_BA       mm2, mm3                    ; mm2=s03+s12      mm3=s03-s12    MMX_SUMSUB2_AB      mm0, mm1, mm4               ; mm0=2.d03+d12    mm4=d03-2.d12    ; transpose in: mm2, mm0, mm3, mm4, out: mm2, mm4, mm1, mm3    MMX_TRANSPOSE       mm2, mm0, mm3, mm4, mm1    MMX_SUMSUB_BADC     mm3, mm2, mm1, mm4          ; mm3=s03  mm2=d03  mm1=s12  mm4=d12    MMX_SUMSUB_BA       mm1, mm3                    ; mm1=s03+s12      mm3=s03-s12    MMX_SUMSUB2_AB      mm2, mm4, mm0               ; mm2=2.d03+d12    mm0=d03-2.d12    mov     eax, [esp+ 4]   ; dct    movq    [eax+ 0],   mm1    movq    [eax+ 8],   mm2    movq    [eax+16],   mm3    movq    [eax+24],   mm0    retcglobal x264_add4x4_idct_mmxALIGN 16;-----------------------------------------------------------------------------;   void __cdecl x264_add4x4_idct_mmx( uint8_t *p_dst, int16_t dct[4][4] );-----------------------------------------------------------------------------x264_add4x4_idct_mmx:    ; Load dct coeffs    mov     eax, [esp+ 8]   ; dct    movq    mm0, [eax+ 0]    movq    mm1, [eax+ 8]    movq    mm2, [eax+16]    movq    mm3, [eax+24]        mov     eax, [esp+ 4]   ; p_dst    picpush ebx    picgetgot ebx    MMX_SUMSUB_BA       mm2, mm0                        ; mm2=s02  mm0=d02    MMX_SUMSUBD2_AB     mm1, mm3, mm5, mm4              ; mm1=s13  mm4=d13 ( well 1 + 3>>1 and 1>>1 + 3)    MMX_SUMSUB_BADC     mm1, mm2, mm4, mm0              ; mm1=s02+s13  mm2=s02-s13  mm4=d02+d13  mm0=d02-d13    ; in: mm1, mm4, mm0, mm2  out: mm1, mm2, mm3, mm0    MMX_TRANSPOSE       mm1, mm4, mm0, mm2, mm3    MMX_SUMSUB_BA       mm3, mm1                        ; mm3=s02  mm1=d02    MMX_SUMSUBD2_AB     mm2, mm0, mm5, mm4              ; mm2=s13  mm4=d13 ( well 1 + 3>>1 and 1>>1 + 3)    MMX_SUMSUB_BADC     mm2, mm3, mm4, mm1              ; mm2=s02+s13  mm3=s02-s13  mm4=d02+d13  mm1=d02-d13    MMX_ZERO            mm7    movq                mm6, [x264_mmx_32 GOT_ebx]        MMX_STORE_DIFF_4P   mm2, mm0, mm6, mm7, [eax+0*FDEC_STRIDE]    MMX_STORE_DIFF_4P   mm4, mm0, mm6, mm7, [eax+1*FDEC_STRIDE]    MMX_STORE_DIFF_4P   mm1, mm0, mm6, mm7, [eax+2*FDEC_STRIDE]    MMX_STORE_DIFF_4P   mm3, mm0, mm6, mm7, [eax+3*FDEC_STRIDE]    picpop  ebx    ret; =============================================================================; 8x8 Transform; =============================================================================; -----------------------------------------------------------------------------; input 2x8 unsigned bytes (%5,%6), zero (%7) output: difference (%1,%2); -----------------------------------------------------------------------------%macro MMX_LOAD_DIFF_8P 7    movq            %1, %5

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩av在线播放中文字幕| 一区二区在线观看视频| 亚洲在线中文字幕| 韩国女主播成人在线观看| jlzzjlzz亚洲女人18| 欧美mv日韩mv国产| 亚洲综合一二区| 国产精品主播直播| 日韩午夜精品电影| 一区二区激情视频| 99久久久国产精品免费蜜臀| 国产调教视频一区| 久久精品二区亚洲w码| 欧美巨大另类极品videosbest | 亚洲一区二区三区四区在线| 国产精品亚洲第一| 精品国产成人系列| 日韩有码一区二区三区| 色综合av在线| 国产精品对白交换视频| 国产成人欧美日韩在线电影| 欧美电视剧在线看免费| 美女在线一区二区| 欧美理论片在线| 亚洲成人免费在线| 欧美日韩精品免费观看视频| 洋洋av久久久久久久一区| 色综合视频一区二区三区高清| 国产精品入口麻豆原神| 成a人片国产精品| 亚洲视频一区二区免费在线观看| 国产成人99久久亚洲综合精品| 久久精品水蜜桃av综合天堂| 国产精品亚洲第一| 国产精品国产精品国产专区不蜜 | 欧美日韩一区高清| 亚洲一区二区三区四区在线观看| 日本久久一区二区三区| 亚洲精品成人精品456| 欧美探花视频资源| 亚洲成av人片在www色猫咪| 日韩一区二区免费在线观看| 麻豆91在线观看| 中文字幕精品一区| 国产网站一区二区| 日韩精品一区二区三区四区视频| 欧美在线视频日韩| 裸体一区二区三区| 久久综合色8888| 国产91露脸合集magnet | 久久久久久97三级| 成人久久视频在线观看| 国产精品短视频| 在线免费观看日本一区| 日韩激情视频网站| 国产亚洲欧美激情| 91亚洲国产成人精品一区二三| 亚洲综合激情网| 欧美精品三级在线观看| 激情五月播播久久久精品| 国产精品视频在线看| 欧美乱熟臀69xxxxxx| 捆绑调教一区二区三区| 久久久蜜桃精品| 99re免费视频精品全部| 欧美精品一区二区久久婷婷| 国产剧情一区二区| 一区二区成人在线| 亚洲精品一区在线观看| 在线视频综合导航| 国产乱码精品1区2区3区| 亚洲一二三区视频在线观看| 欧美tickling挠脚心丨vk| 91视频你懂的| 激情综合一区二区三区| 亚洲午夜成aⅴ人片| 国产女主播在线一区二区| 欧美日韩一区二区三区四区五区| 国产一区在线观看视频| 天天操天天干天天综合网| 国产精品网曝门| 91麻豆蜜桃一区二区三区| 亚洲自拍与偷拍| 国产亚洲一二三区| 欧美久久久影院| 99精品热视频| 日韩av二区在线播放| 亚洲欧美韩国综合色| 欧美成人三级在线| 欧美日韩国产另类一区| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 1000部国产精品成人观看| 欧美va日韩va| 日韩一级视频免费观看在线| 日本黄色一区二区| 成人在线视频首页| 国产精品免费aⅴ片在线观看| 99精品视频在线观看免费| 日韩美女在线视频| 欧美性感一区二区三区| eeuss鲁片一区二区三区在线看| 麻豆精品一区二区av白丝在线| 一区二区三区在线视频免费| 亚洲国产高清不卡| 国产午夜精品一区二区三区视频 | 91免费精品国自产拍在线不卡| 麻豆高清免费国产一区| 亚洲小说欧美激情另类| 亚洲欧美区自拍先锋| 国产精品福利一区| 综合婷婷亚洲小说| 综合电影一区二区三区| 国产精品乱码人人做人人爱| 国产亚洲欧美日韩俺去了| 国产肉丝袜一区二区| 中文字幕精品—区二区四季| 国产喷白浆一区二区三区| 亚洲精品成人少妇| 美女久久久精品| 奇米一区二区三区| 日本午夜精品一区二区三区电影| 亚洲电影欧美电影有声小说| 天堂蜜桃一区二区三区 | 蜜桃av噜噜一区| 久久国产视频网| 国产成人一级电影| 99久久精品费精品国产一区二区| a亚洲天堂av| 欧美美女激情18p| 欧美一级免费观看| 久久久久久久久岛国免费| 久久精品水蜜桃av综合天堂| 国产精品激情偷乱一区二区∴| 中文字幕一区二区不卡| 亚洲成人你懂的| 狠狠狠色丁香婷婷综合久久五月| 国产传媒日韩欧美成人| 色欧美88888久久久久久影院| 欧美日韩一区二区三区高清| 日韩精品最新网址| 一区在线观看免费| 午夜成人免费视频| 国产美女在线精品| 色综合一个色综合亚洲| 欧美电影免费观看高清完整版| 国产拍欧美日韩视频二区| 亚洲妇熟xx妇色黄| 国内精品伊人久久久久av一坑 | 亚洲一线二线三线久久久| 欧美日韩免费高清一区色橹橹 | av在线不卡网| 欧美日韩国产首页| 久久久99精品免费观看| 国产欧美日韩麻豆91| 亚洲免费在线看| av一二三不卡影片| 欧美国产综合色视频| 成人免费毛片片v| 国产午夜精品久久久久久久| 美女爽到高潮91| 精品久久久久一区| 韩日av一区二区| 国产午夜亚洲精品午夜鲁丝片| 国产一区二区三区免费看 | 久久久久久久久久久99999| 久久福利视频一区二区| 日韩欧美123| 国产在线观看免费一区| 欧美日韩美少妇 | 成人黄色综合网站| 国产精品美女一区二区三区 | 精品久久久久久久久久久久久久久 | 首页亚洲欧美制服丝腿| 欧美妇女性影城| 欧美精品一区在线观看| 国产精品影视天天线| 在线视频一区二区三| 欧美天堂亚洲电影院在线播放| 日本乱人伦aⅴ精品| 夜夜嗨av一区二区三区四季av | 亚洲国产成人自拍| av动漫一区二区| 中文字幕日韩av资源站| 2021中文字幕一区亚洲| 黄网站免费久久| 欧美激情资源网| 在线视频国内自拍亚洲视频| 亚洲高清在线视频| 精品成a人在线观看| 成人99免费视频| 亚洲6080在线| 久久久久久99久久久精品网站| 97久久人人超碰| 天堂影院一区二区| 久久久精品一品道一区| 日本伦理一区二区| 久久99精品久久久久婷婷| 亚洲日本乱码在线观看| 欧美一区二区免费| 91丨porny丨首页|