1 /* Copyright (C) 2001-2019 Artifex Software, Inc.
2    All Rights Reserved.
3 
4    This software is provided AS-IS with no warranty, either express or
5    implied.
6 
7    This software is distributed under license and may not be copied,
8    modified or distributed except as expressly authorized under the terms
9    of the license contained in the file LICENSE in this distribution.
10 
11    Refer to licensing information at http://www.artifex.com or contact
12    Artifex Software, Inc.,  1305 Grant Avenue - Suite 200, Novato,
13    CA 94945, U.S.A., +1(415)492-9861, for further information.
14 */
15 /* Parameters derived from machine and compiler architecture. */
16 /* This file was generated mechanically by genarch.c, for a 64bit */
17 /* Microsoft Windows machine, compiling with MSVC. */
18 
19 	 /* ---------------- Scalar alignments ---------------- */
20 
21 #define ARCH_ALIGN_SHORT_MOD 2
22 #define ARCH_ALIGN_INT_MOD 4
23 #define ARCH_ALIGN_LONG_MOD 4
24 #define ARCH_ALIGN_SIZE_T_MOD 8
25 #define ARCH_ALIGN_PTR_MOD 8
26 #define ARCH_ALIGN_FLOAT_MOD 4
27 #define ARCH_ALIGN_DOUBLE_MOD 8
28 
29 	 /* ---------------- Scalar sizes ---------------- */
30 
31 #define ARCH_LOG2_SIZEOF_CHAR 0
32 #define ARCH_LOG2_SIZEOF_SHORT 1
33 #define ARCH_LOG2_SIZEOF_INT 2
34 #define ARCH_LOG2_SIZEOF_LONG 2
35 #define ARCH_LOG2_SIZEOF_SIZE_T 3
36 #define ARCH_SIZEOF_SIZE_T 8
37 
38 #ifndef ARCH_SIZEOF_GX_COLOR_INDEX
39 #define ARCH_SIZEOF_GX_COLOR_INDEX 8
40 #endif
41 
42 #define ARCH_SIZEOF_PTR 8
43 #define ARCH_SIZEOF_FLOAT 4
44 #define ARCH_SIZEOF_DOUBLE 8
45 #define ARCH_FLOAT_MANTISSA_BITS 24
46 #define ARCH_DOUBLE_MANTISSA_BITS 53
47 
48 	 /* ---------------- Unsigned max values ---------------- */
49 
50 #define ARCH_MAX_UCHAR ((unsigned char)0xff + (unsigned char)0)
51 #define ARCH_MAX_USHORT ((unsigned short)0xffff + (unsigned short)0)
52 #define ARCH_MAX_UINT ((unsigned int)~0 + (unsigned int)0)
53 #define ARCH_MAX_ULONG ((unsigned long)~0L + (unsigned long)0)
54 #define ARCH_MAX_SIZE_T ((size_t)~0L + (size_t)0)
55 
56 	 /* ---------------- Miscellaneous ---------------- */
57 
58 #define ARCH_IS_BIG_ENDIAN 0
59 #define ARCH_PTRS_ARE_SIGNED 0
60 #define ARCH_FLOATS_ARE_IEEE 1
61 #define ARCH_ARITH_RSHIFT 2
62 #define ARCH_DIV_NEG_POS_TRUNCATES 1
63