media/libjpeg/simd/jdct.inc

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/media/libjpeg/simd/jdct.inc	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,28 @@
     1.4 +;
     1.5 +; jdct.inc - private declarations for forward & reverse DCT subsystems
     1.6 +;
     1.7 +; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
     1.8 +;
     1.9 +; Based on
    1.10 +; x86 SIMD extension for IJG JPEG library
    1.11 +; Copyright (C) 1999-2006, MIYASAKA Masaru.
    1.12 +; For conditions of distribution and use, see copyright notice in jsimdext.inc
    1.13 +;
    1.14 +; [TAB8]
    1.15 +
    1.16 +; Each IDCT routine is responsible for range-limiting its results and
    1.17 +; converting them to unsigned form (0..MAXJSAMPLE).  The raw outputs could
    1.18 +; be quite far out of range if the input data is corrupt, so a bulletproof
    1.19 +; range-limiting step is required.  We use a mask-and-table-lookup method
    1.20 +; to do the combined operations quickly.
    1.21 +;
    1.22 +%define RANGE_MASK  (MAXJSAMPLE * 4 + 3)  ; 2 bits wider than legal samples
    1.23 +
    1.24 +%define ROW(n,b,s)		((b)+(n)*(s))
    1.25 +%define COL(n,b,s)		((b)+(n)*(s)*DCTSIZE)
    1.26 +
    1.27 +%define DWBLOCK(m,n,b,s)	((b)+(m)*DCTSIZE*(s)+(n)*SIZEOF_DWORD)
    1.28 +%define MMBLOCK(m,n,b,s)	((b)+(m)*DCTSIZE*(s)+(n)*SIZEOF_MMWORD)
    1.29 +%define XMMBLOCK(m,n,b,s)	((b)+(m)*DCTSIZE*(s)+(n)*SIZEOF_XMMWORD)
    1.30 +
    1.31 +; --------------------------------------------------------------------------

mercurial