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