tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

jdct.inc (1273B)


      1 ;
      2 ; jdct.inc - private declarations for forward & reverse DCT subsystems
      3 ;
      4 ; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
      5 ; Copyright (C) 2018, D. R. Commander.
      6 ;
      7 ; Based on the x86 SIMD extension for IJG JPEG library
      8 ; Copyright (C) 1999-2006, MIYASAKA Masaru.
      9 ; For conditions of distribution and use, see copyright notice in jsimdext.inc
     10 
     11 ; Each IDCT routine is responsible for range-limiting its results and
     12 ; converting them to unsigned form (0..MAXJSAMPLE).  The raw outputs could
     13 ; be quite far out of range if the input data is corrupt, so a bulletproof
     14 ; range-limiting step is required.  We use a mask-and-table-lookup method
     15 ; to do the combined operations quickly.
     16 ;
     17 %define RANGE_MASK  (MAXJSAMPLE * 4 + 3)  ; 2 bits wider than legal samples
     18 
     19 %define ROW(n, b, s)  ((b) + (n) * (s))
     20 %define COL(n, b, s)  ((b) + (n) * (s) * DCTSIZE)
     21 
     22 %define DWBLOCK(m, n, b, s) \
     23  ((b) + (m) * DCTSIZE * (s) + (n) * SIZEOF_DWORD)
     24 %define MMBLOCK(m, n, b, s) \
     25  ((b) + (m) * DCTSIZE * (s) + (n) * SIZEOF_MMWORD)
     26 %define XMMBLOCK(m, n, b, s) \
     27  ((b) + (m) * DCTSIZE * (s) + (n) * SIZEOF_XMMWORD)
     28 %define YMMBLOCK(m, n, b, s) \
     29  ((b) + (m) * DCTSIZE * (s) + (n) * SIZEOF_YMMWORD)
     30 
     31 ; --------------------------------------------------------------------------