~ubuntu-branches/ubuntu/wily/x264/wily-proposed

« back to all changes in this revision

Viewing changes to common/x86/deblock-a.asm

  • Committer: Package Import Robot
  • Author(s): Reinhard Tartler
  • Date: 2012-01-19 07:28:39 UTC
  • mfrom: (12.1.11 experimental)
  • Revision ID: package-import@ubuntu.com-20120119072839-0vj6g40ky09d9nru
Tags: 2:0.120.2127+gitf33c8cb-2ubuntu1
* Merge from Debian, remaining changes:
  - build against libgpac-dev to enable .mp4 output

Show diffs side-by-side

added added

removed removed

Lines of Context:
1881
1881
DEBLOCK_CHROMA
1882
1882
%endif
1883
1883
 
 
1884
%macro DEBLOCK_H_CHROMA_422 0
 
1885
cglobal deblock_h_chroma_422, 5,7,8
 
1886
%ifdef ARCH_X86_64
 
1887
    %define cntr r11
 
1888
%else
 
1889
    %define cntr dword r0m
 
1890
%endif
 
1891
    dec    r2d
 
1892
    dec    r3d
 
1893
    sub    r0, 4
 
1894
    lea    t6, [r1*3]
 
1895
    mov    t5, r0
 
1896
    add    r0, t6
 
1897
    mov  cntr, 32/mmsize
 
1898
.skip_prologue:
 
1899
    TRANSPOSE4x8W_LOAD PASS8ROWS(t5, r0, r1, t6)
 
1900
    LOAD_MASK  r2d, r3d
 
1901
    movd       m6, [r4] ; tc0
 
1902
    punpcklbw  m6, m6
 
1903
%if mmsize == 16
 
1904
    punpcklbw  m6, m6
 
1905
    punpcklbw  m6, m6
 
1906
%else
 
1907
    pshufw     m6, m6, q0000
 
1908
%endif
 
1909
    pand       m7, m6
 
1910
    DEBLOCK_P0_Q0
 
1911
    TRANSPOSE8x2W_STORE PASS8ROWS(t5, r0, r1, t6, 2)
 
1912
    lea   r0, [r0+r1*(mmsize/2)]
 
1913
    lea   t5, [t5+r1*(mmsize/2)]
 
1914
    add   r4, mmsize/8
 
1915
    dec   cntr
 
1916
    jg .skip_prologue
 
1917
    REP_RET
 
1918
%endmacro
 
1919
 
 
1920
INIT_MMX mmx2
 
1921
DEBLOCK_H_CHROMA_422
 
1922
INIT_XMM sse2
 
1923
DEBLOCK_H_CHROMA_422
 
1924
INIT_XMM avx
 
1925
DEBLOCK_H_CHROMA_422
1884
1926
 
1885
1927
; in: %1=p0 %2=p1 %3=q1
1886
1928
; out: p0 = (p0 + q1 + 2*p1 + 2) >> 2