Home | History | Annotate | Download | only in simd
      1 ;
      2 ; jcolsamp.inc - private declarations for color conversion & up/downsampling
      3 ;
      4 ; Copyright 2009 Pierre Ossman <ossman (a] cendio.se> for Cendio AB
      5 ;
      6 ; Based on the x86 SIMD extension for IJG JPEG library
      7 ; Copyright (C) 1999-2006, MIYASAKA Masaru.
      8 ; For conditions of distribution and use, see copyright notice in jsimdext.inc
      9 ;
     10 ; [TAB8]
     11 
     12 ; --------------------------------------------------------------------------
     13 
     14 ; pseudo-resisters to make ordering of RGB configurable
     15 ;
     16 %if RGB_RED == 0
     17 %define  mmA  mm0
     18 %define  mmB  mm1
     19 %define xmmA xmm0
     20 %define xmmB xmm1
     21 %elif RGB_GREEN == 0
     22 %define  mmA  mm2
     23 %define  mmB  mm3
     24 %define xmmA xmm2
     25 %define xmmB xmm3
     26 %elif RGB_BLUE == 0
     27 %define  mmA  mm4
     28 %define  mmB  mm5
     29 %define xmmA xmm4
     30 %define xmmB xmm5
     31 %else
     32 %define  mmA  mm6
     33 %define  mmB  mm7
     34 %define xmmA xmm6
     35 %define xmmB xmm7
     36 %endif
     37 
     38 %if RGB_RED == 1
     39 %define  mmC  mm0
     40 %define  mmD  mm1
     41 %define xmmC xmm0
     42 %define xmmD xmm1
     43 %elif RGB_GREEN == 1
     44 %define  mmC  mm2
     45 %define  mmD  mm3
     46 %define xmmC xmm2
     47 %define xmmD xmm3
     48 %elif RGB_BLUE == 1
     49 %define  mmC  mm4
     50 %define  mmD  mm5
     51 %define xmmC xmm4
     52 %define xmmD xmm5
     53 %else
     54 %define  mmC  mm6
     55 %define  mmD  mm7
     56 %define xmmC xmm6
     57 %define xmmD xmm7
     58 %endif
     59 
     60 %if RGB_RED == 2
     61 %define  mmE  mm0
     62 %define  mmF  mm1
     63 %define xmmE xmm0
     64 %define xmmF xmm1
     65 %elif RGB_GREEN == 2
     66 %define  mmE  mm2
     67 %define  mmF  mm3
     68 %define xmmE xmm2
     69 %define xmmF xmm3
     70 %elif RGB_BLUE == 2
     71 %define  mmE  mm4
     72 %define  mmF  mm5
     73 %define xmmE xmm4
     74 %define xmmF xmm5
     75 %else
     76 %define  mmE  mm6
     77 %define  mmF  mm7
     78 %define xmmE xmm6
     79 %define xmmF xmm7
     80 %endif
     81 
     82 %if RGB_RED == 3
     83 %define  mmG  mm0
     84 %define  mmH  mm1
     85 %define xmmG xmm0
     86 %define xmmH xmm1
     87 %elif RGB_GREEN == 3
     88 %define  mmG  mm2
     89 %define  mmH  mm3
     90 %define xmmG xmm2
     91 %define xmmH xmm3
     92 %elif RGB_BLUE == 3
     93 %define  mmG  mm4
     94 %define  mmH  mm5
     95 %define xmmG xmm4
     96 %define xmmH xmm5
     97 %else
     98 %define  mmG  mm6
     99 %define  mmH  mm7
    100 %define xmmG xmm6
    101 %define xmmH xmm7
    102 %endif
    103 
    104 ; --------------------------------------------------------------------------
    105