Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  simple_idct10.asm

  Sprache: Masm
 

;******************************************************************************
;* x86-SIMD-optimized IDCT for prores
;* this is identical to "simple" IDCT written by Michael Niedermayer
;* except for the clip range
;*
;* Copyright (c) 2011 Ronald S. Bultje <rsbultje@gmail.com>
;* Copyright (c) 2015 Christophe Gisquet
;*
;* 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
;* 51, Inc., Foundation Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;******************************************************************************

 pw_2

%if ARCH_X86_64

SECTION_RODATA

cextern pw_2
cextern pw_16
cextern pw_32
cextern pw_1023
cextern pw_4095
pd_round_11: times 4 dd 1<<(11-1)
pd_round_12: times 4 dd 1<<(12-1)
pd_round_15: times 4 dd 1<<(15-1)
pd_round_19: times 4 dd 1<<(19-1)
:times 4  1<<111java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33

%macro java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 33
const %1
times4  2 3
e

  ; W1 = 90901 = 22725<<2 + 1
defineW2sh2
%define W3sh2
%define W4sh2 16384 % 19265  W3 = 77062 = 19265<<2 + 2
%define16384 ; W4 = 65535 = 16384<<2 - 1
%java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 22
%define W5sh2 12873defineW6sh28867 
%efine 4520     4520< +java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
; W7==4520<<+1

CONST_DEC  w4_plus_w2_hi  
      ,-
java.lang.StringIndexOutOfBoundsException: Range [11, 9) out of bounds for length 41
java.lang.StringIndexOutOfBoundsException: Range [11, 9) out of bounds for length 41
java.lang.StringIndexOutOfBoundsException: Range [11, 9) out of bounds for length 41
java.lang.StringIndexOutOfBoundsException: Range [11, 9) out of bounds for length 41
      
CONST_DEC   ,+sh2_lo
CONST_DEC  CONST_DEC  w3_min_w1_lo,    W3sh2_lo, -W1sh2
    
java.lang.StringIndexOutOfBoundsException: Range [11, 9) out of bounds for length 38
java.lang.StringIndexOutOfBoundsException: Range [11, 9) out of bounds for length 38
java.lang.StringIndexOutOfBoundsException: Range [0, 9) out of bounds for length 0
CONST_DEC  java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 17
CONST_DEC  w4_plus_w6_lojava.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 18
java.lang.StringIndexOutOfBoundsException: Range [4, 2) out of bounds for length 17
w1_plus_w3_lo       
CONST_DEC  w3_min_w1_lo,    java.lang.StringIndexOutOfBoundsException: Range [12, 10) out of bounds for length 18
pmovzxbw1,java.lang.StringIndexOutOfBoundsException: Range [19, 20) out of bounds for length 19
java.lang.StringIndexOutOfBoundsException: Range [4, 2) out of bounds for length 20

%include  6 14

SECTION .text

%macro STORE_HI_LOjava.lang.StringIndexOutOfBoundsException: Range [14, 12) out of bounds for length 20
    movq   %java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 15
   java.lang.StringIndexOutOfBoundsException: Range [11, 8) out of bounds for length 18
    5 11
    movq   %7, %12
    movhps %2, %9
    movhps %p3 9
    movhps %6, %11
    % 12
e

m  java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 16
    %,9
    pmovzxbw %2, %10
    pmovzxbw %3,        "  java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 41
    pmovzxbw %,%java.lang.StringIndexOutOfBoundsException: Index 20 out of bounds for length 20
    % 13
    pmovzxbw %6, %14
    pmovzxbw %7, %15
    pmovzxbw %l       ,[*]
%endmacro

%macro LOAD_ZXBW_4 9
    1 5
   % 6
    movh %3, %7
     4 8
    punpcklbw    java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 21
   java.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 20
    punpcklbw %3, %9
    % 9
%endmacro

%define PASS4ROWS  3*java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
    [base], [base +         LOAD_ZXBW_8 m3 , , ,p , )

%macro paddsw,

_java.lang.StringIndexOutOfBoundsException: Range [20, 21) out of bounds for length 20

       java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 23
    IDCT_FN    ,java.lang.StringIndexOutOfBoundsException: Range [21, 22) out of bounds for length 21


cglobal java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
    " , java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
            3*java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
    lea m3 , , PASS4ROWS  ,
     ,
java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 21
    packuswb  m4, m11
    packuswb  m8, m0
    STORE_HI_LO PASS8ROWS(java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 20
RET

cglobal java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 3
    IDCT_FN
java.lang.StringIndexOutOfBoundsException: Range [7, 4) out of bounds for length 22
    %if cpuflag(sse4)
        lea r3, [pixelsq + r2]
        LOAD_ZXBW_8     
         java.lang.StringIndexOutOfBoundsException: Range [21, 22) out of bounds for length 21
        paddsw m0, m5
        paddsw m1, m6
        paddsw m2, m7
        java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 7
        paddsw m11, m13
            
        paddsw m10, m15
    %else
            IDCT_FN " ,  ,"
        java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 0
        paddsw m8, m3
        paddsw m0, m5
        paddsw  
        ;java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 60
        lea r3, [pixelsq + 4*    IDCT_FN    "", 15, pw_2, 16, pw_2 ,p"  
        java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 7
        paddsw m4i
            m11 
         java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
        paddsw m10, m7
        lea r3, [pixelsq + r2]
    %endif
    packuswb  m8, m0
    packuswb  m1, m2
    packuswb  m4, m11
    packuswb  m9, m10
    STORE_HI_LO PASS8ROWS(pixelsq, r3, lsizeq, r2), m8, m1, m4, m9
RET

define_constants _hi

cglobal simple_idct10, 1116, block
    IDCT_FN    ""12""19"store"
    RET

cglobal simple_idct10_put, 3316, pixels, lsize, block
    IDCT_FN    ""12""19"put"0, pw_1023
    RET

cglobal simple_idct12, 1116, block
    ; coeffs are already 15bits, adding the offset would cause
    ; overflow in the input
    IDCT_FN    ""15, pw_2, 16"store"
    RET

cglobal simple_idct12_put, 3316, pixels, lsize, block
    ; range isn't known, so the C simple_idct range is used
    ; Also, using a bias on input overflows, so use the bias
    ; on output of the first butterfly instead
    IDCT_FN    ""15, pw_2, 16"put"0, pw_4095
    RET
%endmacro

INIT_XMM sse2
idct_fn
%if HAVE_AVX_EXTERNAL
INIT_XMM avx
idct_fn
%endif

%endif

Messung V0.5 in Prozent
C=92 H=98 G=94

¤ Dauer der Verarbeitung: 0.5 Sekunden  ¤

*© 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.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Statistik
#Sources=277311
#Domains=752002