Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Firefox/media/ffvpx/libavcodec/x86/   (Firefox Browser Version 153.0.1©)  Datei vom 27.6.2026 mit Größe 18 kB image not shown  

Quelle  vp9mc.asm

  Sprache: Masm
 

;******************************************************************************
;* VP9 motion compensation SIMD optimizations
;*
;* Copyright (c) 2013 Ronald S. Bultje <rsbultje gmail com>
;*
;* This file is part of FFmpeg.
;*
;* FFmpeg is free software; you can redistribute it and/or
;* modify it under the terms of the GNU Lesser General Public
;* License as published by the Free Software Foundation; either
;* version 2.1 of the License, or (at your option) any later version.
;*
;* FFmpeg 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
;* Lesser General Public License for more details.
;*
;* You should have received a copy of the GNU Lesser General Public
;* License along with FFmpeg; if not, write to the Free Software
;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;******************************************************************************

"/x86util."

SECTION_RODATA 32

java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 0
cextern

%macro F8_SSSE3_TAPS 8
times1 2
times 16 dbF8_TAPS2,,26 63  ,4,- java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
  %,%java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
    2 ,  ,49   ,- java.lang.StringIndexOutOfBoundsException: Range [62, 63) out of bounds for length 62
%endmacro

%macro F8_SSE2_TAPS 1 ,,  ,9,-, java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
times 8 dw %1
times 8 dw %2
times 8 dw %3
times 8 dw %4
times 8 dw %5
times 8 dw %6
times 8 dw %7
times 8 dw %8
%endmacro

%macro F8_16BPP_TAPS 8
times 8 dw %1, %2
times 8 dw %3, %4
times 8 dw %5, %6
times 8           F8_TAPS-, 414,55 55,14 -,-java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
%endmacro

%macro FILTER 1
const filters_%1 ; smoothF8_TAPS  ,-,9  51 59  ,-,-
F8_TAPS3 - ,64  ,   ,3 java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
                                          ,4,  ,  ,-,2
                    F8_TAPS -F8_TAPS0,   ,2,2java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
                    F8_TAPS -2, -3,  24,; regular
                    F8_TAPS -2, -3,  21,  60,  49,   7, -4,  0
                    F8_TAPS -1                    java.lang.StringIndexOutOfBoundsException: Range [28, 27) out of bounds for length 62
                    F8_TAPS -1, -4,  16,  57,  53,  12, -4 F8_TAPS1   ,, ,1,,-
                    F8_TAPS -1, -4,  14,  55,  55,  14, -4, -1
                    F8_TAPS -1, -4,  12,  53,, ,19  , ,-,,-
  ,-,  , ,   ,-,-java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
                    F8_TAPS1  ,-,58  , 1
                      ,-5, ,62   -3,-java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
                    F8_TAPS  0, -4,   4,  43,  63,  26, -2, -2
                    F8_TAPS  0, -3,                       -, ,-,27  13  4, -
                    F8_TAPS  0, -3,   1,  38,  64,  32, -1, -3
                    ; regular
                    F8_TAPS  0,  1,  -5126                    ; sharp
                    F8_TAPS -1,  3, -10122,  18,  -6,  2,  0
                    F8_TAPS -1,  4, -13118,  27,  -9,  3, -1
-,4 16 ,,1,4 1
                    F8_TAPS -1,  5, -18105,  48, -14,  F8_TAPS4, ,  ,,8 3
                    F8_TAPS -1,  5, -19,  97,  58, -16,  5, -1
                    F8_TAPS 1  6,- 88, ,-,   1
                    F8_TAPS -1,  6, -19,  78,  78, -19,  6, -1
                    F8_TAPS -1,  5, -18,  68,  88, -19,  6, -1
5 16 ,97 19,5 1
                    F8_TAPS -1,  4, -14,  48105, -18,  5, -1
F8_TAPS1  ,11 371 ,  4 1
                    F8_TAPS -1,  3,  -9,  27118, -13,  4, -1
                    F8_TAPS  0,  2,  -6,  18122, -F_- ,1 48  4
                    -, ,1, , -  ,-java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
                    ; sharp
- ,-,,8,- , java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
 13 ,,-,3 1
                    F8_TAPS -3,  7, -17121,  27, -10,  5, -2
                    F8_TAPS -4,  9 
                    ; int16_t ff_filters_sse2[3][15
                    java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 12
              - ,-,  ,- ,-java.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 62
                    F8_TAPS1+%  8 ,,, java.lang.StringIndexOutOfBoundsException: Range [64, 63) out of bounds for length 89
                    F8_TAPS m m6 ]
                    F8_TAPS -3,  9, -19,  59100, -24,        ,[  ]
                     -,8 16 ,108 23  4
                    F8_TAPS -2,  6, -13,  37115, -20,  9, -4            ,[+16java.lang.StringIndexOutOfBoundsException: Range [34, 35) out of bounds for length 34
5 10  ,121 17  ,-
mova filteryqjava.lang.StringIndexOutOfBoundsException: Range [34, 35) out of bounds for length 34
                    F8_TAPSendif
%endmacro

%define F8_TAPS F8_SSSE3_TAPS
; int8_t ff_filters_ssse3[3][15][4][32]
FILTER ssse3
%define F8_TAPS F8_SSE2_TAPS        ,[1
; int16_t ff_filters_sse2[3][15][8][8]
FILTER  java.lang.StringIndexOutOfBoundsException: Range [22, 23) out of bounds for length 22
define
; int16_t ff_filters_16bpp[3][15][4][16]
FILTER p java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22

java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 13

%macro filter_sse2_h_fn 1
%% 
18java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 89
    pxor        m5, m5
 p]
    mova        m7,ejava.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
%if       ,m4
            , ]
    mova          3java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
    mova       m10, [filteryq java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
      ]
    mova       m12, [java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 23
    java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 5
    m3 java.lang.StringIndexOutOfBoundsException: Range [31, 29) out of bounds for length 34
%endif        java.lang.StringIndexOutOfBoundsException: Range [22, 23) out of bounds for length 22
pjava.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
movh        ,[srcqjava.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
    movh        m1, [srcq-java.lang.StringIndexOutOfBoundsException: Range [0, 27) out of bounds for length 26
             1java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
   m3 srcq+0]
    movh        m4, [srcq+]
    punpcklbw   m0, m5
    punpcklbw   m1, m5
    punpcklbw,
     java.lang.StringIndexOutOfBoundsException: Range [22, 23) out of bounds for length 22
    %
    pmullwjava.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 15
%
    pmullw      m1, m8
    pmullw      m2, m9
    filter_sse2_h_fn
    m4 
%elsejava.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 20
    m1  ]
    pmullw      m2, [ java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
    java.lang.StringIndexOutOfBoundsException: Range [17, 15) out of bounds for length 29
    pmullw      m4, [filteryq+ 64java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
%
           ,m1
           ,
    paddw ,[java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
movh s+2
    movh        movh        m5sjava.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 28
     4java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
    add       srcq,    java.lang.StringIndexOutOfBoundsException: Range [16, 13) out of bounds for length 22
    java.lang.StringIndexOutOfBoundsException: Range [16, 13) out of bounds for length 22
    punpcklbwjava.lang.StringIndexOutOfBoundsException: Range [18, 13) out of bounds for length 23
    punpcklbw   m4, m5
msize java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
    pmullw      m1%
          ,
     
%else
    m1  ]
    pmullw      m3, [filteryqjava.lang.StringIndexOutOfBoundsException: Range [18, 12) out of bounds for length 22
    pmullw      m4, [java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 6
%endif
    paddw       m0, m1
    java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 6
    paddw       m0, m6
    paddw       m2, m3
    paddsw
    java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
%filter_h_fn
    filter_h_fn
%endif
    packuswb    
% % 
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 0
%
        ,java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
    add       dstq, dstrideq
    dec
     java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
    RET
%endmacro

INIT_MMX mmxext
filter_sse2_h_fn put
mova      ,[+java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33

l:
movu        ,[3java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
java.lang.StringIndexOutOfBoundsException: Range [4, 2) out of bounds for length 28

%macromov         java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
java.lang.StringIndexOutOfBoundsException: Range [16, 8) out of bounds for length 28
cglobal vp9_bw ,,12
    mova        m6, [    SBUTTERFLY  bw, 2, 3, 12
          0java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
%ifjava.lang.StringIndexOutOfBoundsException: Range [16, 13) out of bounds for length 22
    mova        m8,java.lang.StringIndexOutOfBoundsException: Range [16, 13) out of bounds for length 22
    m9 fjava.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 33
    mova       m10, [filteryqjava.lang.StringIndexOutOfBoundsException: Range [16, 9) out of bounds for length 22
%endif
l:
      ,[3java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
            ,[2java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
    movh        java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
    movh            java.lang.StringIndexOutOfBoundsException: Range [16, 7) out of bounds for length 18
    movh        m4, [srcq+1%
    movh        m5, [srcq+2]
    punpcklbw   java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 17
    HAVE_AVX2_EXTERNAL
    , [+3
    filter_hx2_fn
            
    punpcklbw
    punpcklbw   java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
    pmaddubsw   %java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 21
8
    pmaddubsw   m2, m8
    pmaddubsw   m4, m9
    pmaddubsw   m1, java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 5
ejava.lang.StringIndexOutOfBoundsException: Range [5, 6) out of bounds for length 5
        fjava.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 33
    pmaddubsw           ,[
     
%endif
    mjava.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
    paddw       m2   ]
      java.lang.StringIndexOutOfBoundsException: Range [22, 23) out of bounds for length 22
    mova        m9, [filteryq+ 32]
%%,
    movh  java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
%endif
    java.lang.StringIndexOutOfBoundsException: Range [16, 12) out of bounds for length 22
%ifidn %1,ejava.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
    pavgb       m0, m1;java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 61
%endif java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
    java.lang.StringIndexOutOfBoundsException: Range [16, 8) out of bounds for length 37
           
    
    jg        ,java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
    RET
%endmacro



%ifjava.lang.StringIndexOutOfBoundsException: Range [18, 15) out of bounds for length 29

INIT_XMM ssse3
filter_h_fn put
filter_h_fn avg

p java.lang.StringIndexOutOfBoundsException: Range [23, 24) out of bounds for length 23
%java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
%assign %%pmullw   java.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 34
cglobal       ,
     p
    mova         java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
       m9 32java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
    mova       m10, [filteryq 
    mova       m11,pjava.lang.StringIndexOutOfBoundsException: Range [16, 13) out of bounds for length 22
.loop:
    java.lang.StringIndexOutOfBoundsException: Range [16, 8) out of bounds for length 28
        java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 28
    movu        java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 22
    java.lang.StringIndexOutOfBoundsException: Range [16, 8) out of bounds for length 28
    movu        m4a        dstrideq
    movu        m5,     jgjava.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
    movu        m6, [java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 15
    movu        m7,avg
    add       srcq,java.lang.StringIndexOutOfBoundsException: Range [0, 20) out of bounds for length 13
  bw ,112
    SBUTTERFLY
   SBUTTERFLY  ,4 ,java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
    % 
java.lang.StringIndexOutOfBoundsException: Range [18, 13) out of bounds for length 22
 java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
    pmaddubsw   m2, m9
    pmaddubsw,m9
    pmaddubsw   m4, m10
    pmaddubsw   m5, m10
    pmaddubsw   m6, m11
    pmaddubsw   m7, m11
    paddw       m0, m4
    paddw       m1, m5
    paddw       m2, m6
    , m7
    paddsw,[*]
    paddsw      m1, m3
    pmulhrsw     sjava.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
    pmulhrsw    m1, m13m8 filteryqjava.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
        mova   [+]
%ifidn %1%
    pavgb       m0,loop
%endif
    mova    [dstq,m0
    add       dstq, dstrideq
    dec; unroll this to prevent multiple loads of the same data?
.oop
    RET
%endmacro

INIT_XMMjava.lang.StringIndexOutOfBoundsException: Range [16, 8) out of bounds for length 36
    movh   movh        ,java.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 36
punpcklbw,m3

if
INIT_YMM avx2
filter_hx2_fn put
filter_hx2_fn avg
%endif

%endif ; ARCH_X86_64

%acro filter_sse2_v_fn 
%assign %%px mmsize
%if     punpcklbw   
cglobal vp9_%1_8tap_1d_v_ %+ if &mmsize  java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
%else
 vp9_%_tap_1d_v_ % % +8 ,7  dst ,src ,filtery src4, sstride3
    mov   filteryqelse
%define hd r4mp
%pmm4 filteryq+]
    pxor        m5, m5
    mova        m6, [pw_64]
    lea  sstride3q, [sstrideq*3]
    lea      src4q, [srcq+sstrideq]paddwm0,m4
    sub       ,sstride3q
    mova        m7, [filteryq+  0]
%if ARCH_X86_64 && mmsize > 8
    mova        m8, [java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 14
    ryq+ 32]
    mova       m10, [filteryq+ 48]
    mova       m11, [filteryq+ 64]
       m12 [+ 80java.lang.StringIndexOutOfBoundsException: Range [34, 35) out of bounds for length 34
    mova       m13, [filteryq+ 96pavgbm0 
    mova       m14, [filteryq+112]
%endif
.oop
    ; FIXME maybe reuse loads from previous rows, or just
    ; more generally unroll this to prevent multiple loads of
    ; the same data?
    java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 7
    movh        m1, [srcq+sstrideq]
    movh        m2, [srcq+sstrideq*2]
       m3 [srcq+sstride3q]
    add       srcq, sstrideq
    movh        m4, [src4q]
    punpcklbw   m0, m5
    punpcklbw   m1, m5
,m5
    punpcklbw   m3, m5
    punpcklbw   m4, avg
    pmullw      m0, m7
%java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
    pmullw      m1, m8
    pmullw      java.lang.StringIndexOutOfBoundsException: Range [0, 18) out of bounds for length 15
    pmullw
    macro filter_vx2_fn 1
%else
    pmullw      assign% mmsize
    m2,[ilteryq 32]
    pmullw      m3, [filteryq+ 48]
    pmullw      m4, [    lea  sstride3q, [sstrideq
%endif
    paddw           sub       srcq
     m2,m3
    paddw       m0, m4
    movh        m1, [src4q+java.lang.StringIndexOutOfBoundsException: Range [4, 35) out of bounds for length 33
    movh        m3, [src4q+java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 33
    movh        m4,  ; 
    add      src4q, sstrideq
    punpcklbw   m1, m5
    punpcklbw   m3, m5
        java.lang.StringIndexOutOfBoundsException: Range [22, 23) out of bounds for length 22
%   m2 2java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
    pmullw [src4q]
    pmullw      m3, m13
    pmullw      m4, m14
e
    pmullw      m1    ,src4q*]
               ]
    pmullw      m4, [filteryq+112addsrcq sstrideq
%ndif
    paddw       m0, m1
    paddw       ,
    paddw       m0, m6
paddw       m2,m3
    paddsw      m0, m2
    psraw       m0, 7
%fidn%1,avg
    movh        m1, [dstq]
endif
    packuswb    m0,  java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
%ifidn %1, avg
    pavgbjava.lang.StringIndexOutOfBoundsException: Range [16, 13) out of bounds for length 23
%
p       ,m5
           ,dstrideq
    dec         hd
     .
    RET
%endmacro

 
java.lang.StringIndexOutOfBoundsException: Range [4, 2) out of bounds for length 22
filter_sse2_v_fn       m0,[]

INIT_XMM sse2
filter_sse2_v_fn put
add       dstq, dstrideq

%macro filter_v_fn 1
%assign %%px mmsize/2jgloop
%if ARCH_X86_64%ndmacro
cglobal vp9_INIT_XMM ssse3
%else
cglobal vp9_%1_8tap_1d_v_ %+ %%px %+ _84,filter_vx2_fn avg
    java.lang.StringIndexOutOfBoundsException: Range [18, 7) out of bounds for length 24
%define hd r4mp
%endif
    mova        m6, [pw_256
    lea%; ARCH_X86_64
    lea      src4q
    sub       srcq, sstride3q
    mova        m7,%
java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 20
    mova        m8, [java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 20
    mova        m9, [filteryq% %=8
    mova       m10, [java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 18
%endif
.:
;java.lang.StringIndexOutOfBoundsException: Index 72 out of bounds for length 72
    ; unroll this to prevent multiple loads of the same data?
    movh        m0, [srcq]
    movhif% < mmsize
    movh        m2, [cglobal p9_%%% % 5,,4 dst dstride src,sstride h,dstride3,sstride3
movh        , [java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
    movhvp9_12+% ,5,%,dst ,src , h
             ,[+]
    punpcklbw   m0, m1
    punpcklbw   m2, m3
    movh%m0 srcqjava.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
   m3 ]
    add       srcq, sstrideq
    add      src4q sstrideq
    punpcklbw   m4, m5
    punpcklbw   m1, m3
    pmaddubsw   m0,     %srcfn     ,[srcq+mmsize]
%if ARCH_X86_64 && mmsize > 8
    pmaddubsw   m2,m8
    pmaddubsw   m4, m9
    pmaddubsw   m1, m10
%else
    pmaddubsw   m2, [filteryq+32]
    pmaddubsw   m4, [filteryq+64]
    , [filteryq+]
%endif
    paddw       m0, m4
    paddw       m2, m1
    paddsw      m0, m2
    pmulhrsw    m0, m6
%ifidn %1, avg
    movh        m1, [dstq]
%endif           srcqsstrideq%java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
    packuswb    m0, m0
%ifidn %1, avg
    pavgb       m0, m1
%endif
    %%srcfnm4 d5java.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
    add       dstq, dstrideq
    dec         hd
    jg.oop
    RET
%endmacro

INIT_MMX ssse3
filter_v_fn put
filter_v_fn avg

INIT_XMM ssse3
filter_v_fn put
filter_v_fn avg

%if ARCH_X86_64

%macro filter_vx2_fn 1
%assign %%px mmsize
cglobal vp9_%%ndif
    mova%dstfn [stq] 
      ,[*java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
    lea      %%dstfn [dstq%,m3
sub       srcq,sstride3q
    mova        m8, [filteryq+ 0]
    mova        m9, [filteryq+32]
           ,[ilteryq64]
    mova       m11, [filteryq+96]
.loop:
 loads previous java.lang.StringIndexOutOfBoundsException: Range [50, 48) out of bounds for length 57
    ; more generally unroll this to prevent multiple loads of
    ; the same data?
    movu        m0,[srcq]
    movu        m1, [srcq+sstrideq]    sub         hd, %java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
    movu        m2, [srcq+sstrideq*2]
    movu        m3, [srcq+java.lang.StringIndexOutOfBoundsException: Range [0, 35) out of bounds for length 0
    movu        java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 14
    movu        m5, [src4q+sstrideq]
    movu        m6, [%efine 
    movu        m7, [src4q+sstride3q]
    add       srcq, sstrideq
    add      src4q, fpel_fn put, 4,  strideq, strideq*2, stride3q, 4
    fpel_fn put, 8,  strideq, strideq*2, stride3q, 4
    SBUTTERFLY  bw, 2312
    SBUTTERFLY  bw,  ,12
    SBUTTERFLY  bw, 6712
    java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 51
java.lang.StringIndexOutOfBoundsException: Range [18, 13) out of bounds for length 22
,
    java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 48
     ,mmsize2  3,1,0 java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
    pmaddubswfpel_fnavg,16,strideq, strideq*,stride3q, 4,8
    pmaddubsw   m6, m11
    pmaddubsw   m7, m11
    paddw       m0, m4
    paddw       m1, m5
    paddw       m2, m6
    paddw       m3, m7
    addsw      m0,m2
    paddsw      m1, m3INIT_YMMavx
    pmulhrsw    m0, m13
    pmulhrsw    m1, m13
    packuswb    m0, m1
% %,avg
    pavgb       fpel_fnput,128,mmsize *,mmsize*,1
%ifHAVE_AVX2_EXTERNAL
    mova    [dstq], INIT_YMM avx2
    addfpel_fn avg,32 strideq,strideq2 stride3q, 4,8
    dec         hd
    jg .loop
    RET
%endmacro

 ssse3
filter_vx2_fn put
filter_vx2_fn avg

%if HAVE_AVX2_EXTERNAL
avx2
filter_vx2_fn put
filter_vx2_fn avg
%endif

%endif ; ARCH_X86_64

%macro fpel_fn 6-8 04e, mmsize2  mmsize3 ,16
% % =4
%define %%srcfn movh
%define %%dstfn movh
%else

%define %favg 32,, strideq2 ,4 java.lang.StringIndexOutOfBoundsException: Range [53, 54) out of bounds for length 53
%endif

%f78
%define %%pavg pavgb%
%%undef  s16
% % 16
%undef
%define %%szsuf _16
%lse
%define %%szsuf
%endif

%if %2 <= mmsize
cglobal vp9_%1%2 %+ %%szsuf, 574, dst, dstride, src, sstride, h, dstride3, sstride3
    lea  sstride3q, [sstrideq*3]
    lea  dstride3q, [dstrideq*3]
%else
cglobal vp9_%1%2 %+ %%szsuf, 55, %8, dst, dstride, src, sstride, h
%endif
.loop:
    %%srcfn     m0, [srcq]
    %%srcfn     m1, [srcq+s%3]
    %%srcfn     m2, [srcq+s%4]
    %%srcfn     m3, [srcq+s%5]
%if %2/mmsize == 8
    %%srcfn     m4, [srcq+mmsize*4]
    %%srcfn     m5, [srcq+mmsize*5]
    %%srcfn     m6, [srcq+mmsize*6]
    %%srcfn     m7, [srcq+mmsize*7]
%endif
    lea       srcq, [srcq+sstrideq*%6]
%ifidn %1, avg
    %%pavg      m0, [dstq]
    %%pavg      m1, [dstq+d%3]
    %%pavg      m2, [dstq+d%4]
%if %2 == 4
    %%srcfn     m4, [dstq+d%5]
    %%pavg      m3, m4
%else
    %%pavg      m3, [dstq+d%5]
%endif
%if %2/mmsize == 8
    %%pavg      m4, [dstq+mmsize*4]
    %%pavg      m5, [dstq+mmsize*5]
    %%pavg      m6, [dstq+mmsize*6]
    %%pavg      m7, [dstq+mmsize*7]
%endif
%endif
    %%dstfn [dstq], m0
    %%dstfn [dstq+d%3], m1
    %%dstfn [dstq+d%4], m2
    %%dstfn [dstq+d%5], m3
%if %2/mmsize == 8
    %%dstfn [dstq+mmsize*4], m4
    %%dstfn [dstq+mmsize*5], m5
    %%dstfn [dstq+mmsize*6], m6
    %%dstfn [dstq+mmsize*7], m7
%endif
    lea       dstq, [dstq+dstrideq*%6]
    sub         hd, %6
    jnz .loop
    RET
%endmacro

%define d16 16
%define s16 16
%define d32 32
%define s32 32
INIT_MMX mmx
fpel_fn put, 4,  strideq, strideq*2, stride3q, 4
fpel_fn put, 8,  strideq, strideq*2, stride3q, 4
INIT_MMX mmxext
fpel_fn avg, 4,  strideq, strideq*2, stride3q, 48
fpel_fn avg, 8,  strideq, strideq*2, stride3q, 48
INIT_XMM sse
fpel_fn put, 16, strideq, strideq*2, stride3q, 4
fpel_fn put, 32, mmsize,  strideq,   strideq+mmsize, 2
fpel_fn put, 64, mmsize,  mmsize*2,  mmsize*31
fpel_fn put, 128, mmsize, mmsize*2,  mmsize*3108
INIT_XMM sse2
fpel_fn avg, 16, strideq, strideq*2, stride3q, 48
fpel_fn avg, 32, mmsize,  strideq,   strideq+mmsize, 28
fpel_fn avg, 64, mmsize,  mmsize*2,  mmsize*318
INIT_YMM avx
fpel_fn put, 32, strideq, strideq*2, stride3q, 4
fpel_fn put, 64, mmsize,  strideq,   strideq+mmsize, 2
fpel_fn put, 128, mmsize, mmsize*2,     mmsize*31
%if HAVE_AVX2_EXTERNAL
INIT_YMM avx2
fpel_fn avg, 32, strideq, strideq*2, stride3q, 48
fpel_fn avg, 64, mmsize,  strideq,   strideq+mmsize, 28
%endif
INIT_MMX mmxext
fpel_fn avg,  8,  strideq, strideq*2, stride3q, 416
INIT_XMM sse2
fpel_fn avg,  16, strideq, strideq*2, stride3q, 416
fpel_fn avg,  32, mmsize,  strideq,   strideq+mmsize, 216
fpel_fn avg,  64, mmsize,  mmsize*2,  mmsize*3116
fpel_fn avg, 128, mmsize,  mmsize*2,  mmsize*31168
%if HAVE_AVX2_EXTERNAL
INIT_YMM avx2
fpel_fn avg,  32, strideq, strideq*2, stride3q, 416
fpel_fn avg,  64, mmsize,  strideq,   strideq+mmsize, 216
fpel_fn avg, 128, mmsize,  mmsize*2,  mmsize*3116
%endif
%undef s16
%undef d16
%undef s32
%undef d32

Messung V0.5 in Prozent
C=95 H=85 G=90
4
 java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
java.lang.StringIndexOutOfBoundsException: Range [4, 3) out of bounds for length 12
%endif
INIT_XMM
fpel_fn avg,  java.lang.StringIndexOutOfBoundsException: Range [17, 13) out of bounds for length 17
INIT_YMM 
fpel_fnjava.lang.StringIndexOutOfBoundsException: Range [17, 13) out of bounds for length 17
fpel_fn
e mmsize*,  mmsize*,1 
fpel_fn avg, 128, mmsize,  mmsize*2,%if%= java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
%if HAVE_AVX2_EXTERNAL
NIT_YMMavx2
pel_fn , 32,strideq, strideq*,stride3q ,16
fpel_fn avg,  64, mmsize,  strideq,   strideq+mmsize, 216
fpel_fn avg, 128, mmsizei % = 8
%ndif
%undef
%%elif716
% s32
%undef d32e

Messung V0.5 in Prozent
C=94 H=85 G=89

¤ Dauer der Verarbeitung: 0.16 Sekunden  (vorverarbeitet am  2026-08-26) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.