xref: /aosp_15_r20/external/libjpeg-turbo/simd/nasm/jsimdcfg.inc (revision dfc6aa5c1cfd4bc4e2018dc74aa96e29ee49c6da)
1*dfc6aa5cSAndroid Build Coastguard Worker;
2*dfc6aa5cSAndroid Build Coastguard Worker; Automatically generated include file from jsimdcfg.inc.h
3*dfc6aa5cSAndroid Build Coastguard Worker;
4*dfc6aa5cSAndroid Build Coastguard Worker;
5*dfc6aa5cSAndroid Build Coastguard Worker; -- jpeglib.h
6*dfc6aa5cSAndroid Build Coastguard Worker;
7*dfc6aa5cSAndroid Build Coastguard Worker%define DCTSIZE 8
8*dfc6aa5cSAndroid Build Coastguard Worker%define DCTSIZE2 64
9*dfc6aa5cSAndroid Build Coastguard Worker;
10*dfc6aa5cSAndroid Build Coastguard Worker; -- jmorecfg.h
11*dfc6aa5cSAndroid Build Coastguard Worker;
12*dfc6aa5cSAndroid Build Coastguard Worker%define RGB_RED 0
13*dfc6aa5cSAndroid Build Coastguard Worker%define RGB_GREEN 1
14*dfc6aa5cSAndroid Build Coastguard Worker%define RGB_BLUE 2
15*dfc6aa5cSAndroid Build Coastguard Worker%define RGB_PIXELSIZE 3
16*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_RGB_RED 0
17*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_RGB_GREEN 1
18*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_RGB_BLUE 2
19*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_RGB_PIXELSIZE 3
20*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_RGBX_RED 0
21*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_RGBX_GREEN 1
22*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_RGBX_BLUE 2
23*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_RGBX_PIXELSIZE 4
24*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_BGR_RED 2
25*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_BGR_GREEN 1
26*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_BGR_BLUE 0
27*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_BGR_PIXELSIZE 3
28*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_BGRX_RED 2
29*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_BGRX_GREEN 1
30*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_BGRX_BLUE 0
31*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_BGRX_PIXELSIZE 4
32*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_XBGR_RED 3
33*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_XBGR_GREEN 2
34*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_XBGR_BLUE 1
35*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_XBGR_PIXELSIZE 4
36*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_XRGB_RED 1
37*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_XRGB_GREEN 2
38*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_XRGB_BLUE 3
39*dfc6aa5cSAndroid Build Coastguard Worker%define EXT_XRGB_PIXELSIZE 4
40*dfc6aa5cSAndroid Build Coastguard Worker%define RGBX_FILLER_0XFF 1
41*dfc6aa5cSAndroid Build Coastguard Worker; Representation of a single sample (pixel element value).
42*dfc6aa5cSAndroid Build Coastguard Worker; On this SIMD implementation, this must be 'unsigned char'.
43*dfc6aa5cSAndroid Build Coastguard Worker;
44*dfc6aa5cSAndroid Build Coastguard Worker%define JSAMPLE byte ; unsigned char
45*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_JSAMPLE SIZEOF_BYTE ; sizeof(JSAMPLE)
46*dfc6aa5cSAndroid Build Coastguard Worker%define CENTERJSAMPLE 128
47*dfc6aa5cSAndroid Build Coastguard Worker; Representation of a DCT frequency coefficient.
48*dfc6aa5cSAndroid Build Coastguard Worker; On this SIMD implementation, this must be 'short'.
49*dfc6aa5cSAndroid Build Coastguard Worker;
50*dfc6aa5cSAndroid Build Coastguard Worker%define JCOEF word ; short
51*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_JCOEF SIZEOF_WORD ; sizeof(JCOEF)
52*dfc6aa5cSAndroid Build Coastguard Worker; Datatype used for image dimensions.
53*dfc6aa5cSAndroid Build Coastguard Worker; On this SIMD implementation, this must be 'unsigned int'.
54*dfc6aa5cSAndroid Build Coastguard Worker;
55*dfc6aa5cSAndroid Build Coastguard Worker%define JDIMENSION dword ; unsigned int
56*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_JDIMENSION SIZEOF_DWORD ; sizeof(JDIMENSION)
57*dfc6aa5cSAndroid Build Coastguard Worker%define JSAMPROW POINTER ; JSAMPLE * (jpeglib.h)
58*dfc6aa5cSAndroid Build Coastguard Worker%define JSAMPARRAY POINTER ; JSAMPROW * (jpeglib.h)
59*dfc6aa5cSAndroid Build Coastguard Worker%define JSAMPIMAGE POINTER ; JSAMPARRAY * (jpeglib.h)
60*dfc6aa5cSAndroid Build Coastguard Worker%define JCOEFPTR POINTER ; JCOEF * (jpeglib.h)
61*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_JSAMPROW SIZEOF_POINTER ; sizeof(JSAMPROW)
62*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_JSAMPARRAY SIZEOF_POINTER ; sizeof(JSAMPARRAY)
63*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_JSAMPIMAGE SIZEOF_POINTER ; sizeof(JSAMPIMAGE)
64*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_JCOEFPTR SIZEOF_POINTER ; sizeof(JCOEFPTR)
65*dfc6aa5cSAndroid Build Coastguard Worker;
66*dfc6aa5cSAndroid Build Coastguard Worker; -- jdct.h
67*dfc6aa5cSAndroid Build Coastguard Worker;
68*dfc6aa5cSAndroid Build Coastguard Worker; A forward DCT routine is given a pointer to a work area of type DCTELEM[];
69*dfc6aa5cSAndroid Build Coastguard Worker; the DCT is to be performed in-place in that buffer.
70*dfc6aa5cSAndroid Build Coastguard Worker; To maximize parallelism, Type DCTELEM is changed to short (originally, int).
71*dfc6aa5cSAndroid Build Coastguard Worker;
72*dfc6aa5cSAndroid Build Coastguard Worker%define DCTELEM word ; short
73*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_DCTELEM SIZEOF_WORD ; sizeof(DCTELEM)
74*dfc6aa5cSAndroid Build Coastguard Worker%define float FP32 ; float
75*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_FAST_FLOAT SIZEOF_FP32 ; sizeof(float)
76*dfc6aa5cSAndroid Build Coastguard Worker; To maximize parallelism, Type short is changed to short.
77*dfc6aa5cSAndroid Build Coastguard Worker;
78*dfc6aa5cSAndroid Build Coastguard Worker%define ISLOW_MULT_TYPE word ; must be short
79*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_ISLOW_MULT_TYPE SIZEOF_WORD ; sizeof(ISLOW_MULT_TYPE)
80*dfc6aa5cSAndroid Build Coastguard Worker%define IFAST_MULT_TYPE word ; must be short
81*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_IFAST_MULT_TYPE SIZEOF_WORD ; sizeof(IFAST_MULT_TYPE)
82*dfc6aa5cSAndroid Build Coastguard Worker%define IFAST_SCALE_BITS 2 ; fractional bits in scale factors
83*dfc6aa5cSAndroid Build Coastguard Worker%define FLOAT_MULT_TYPE FP32 ; must be float
84*dfc6aa5cSAndroid Build Coastguard Worker%define SIZEOF_FLOAT_MULT_TYPE SIZEOF_FP32 ; sizeof(FLOAT_MULT_TYPE)
85*dfc6aa5cSAndroid Build Coastguard Worker;
86*dfc6aa5cSAndroid Build Coastguard Worker; -- jsimd.h
87*dfc6aa5cSAndroid Build Coastguard Worker;
88*dfc6aa5cSAndroid Build Coastguard Worker%define JSIMD_NONE 0x00
89*dfc6aa5cSAndroid Build Coastguard Worker%define JSIMD_MMX 0x01
90*dfc6aa5cSAndroid Build Coastguard Worker%define JSIMD_3DNOW 0x02
91*dfc6aa5cSAndroid Build Coastguard Worker%define JSIMD_SSE 0x04
92*dfc6aa5cSAndroid Build Coastguard Worker%define JSIMD_SSE2 0x08
93*dfc6aa5cSAndroid Build Coastguard Worker%define JSIMD_AVX2 0x80
94