94165de530da04a288e650fae6d9b596871a3936
[kopensolaris-gnu/glibc.git] / sysdeps / unix / sysv / solaris2 / kopensolaris-gnu / x86 / sys / isa_defs.h
1 /* Declarations of x86 (i386 and amd64) macros.
2    Copyright (C) 2008 Free Software Foundation, Inc.
3    This file is part of the GNU C Library.
4
5    The GNU C Library is free software; you can redistribute it and/or
6    modify it under the terms of the GNU Lesser General Public
7    License as published by the Free Software Foundation; either
8    version 2.1 of the License, or (at your option) any later version.
9
10    The GNU C Library is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13    Lesser General Public License for more details.
14
15    You should have received a copy of the GNU Lesser General Public
16    License along with the GNU C Library; if not, write to the Free
17    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18    02111-1307 USA.  */
19
20 #ifndef _SYS_ISA_DEFS_H
21 #define _SYS_ISA_DEFS_H
22
23 #define _LITTLE_ENDIAN
24 #define _STACK_GROWS_DOWNWARD
25 #define _LONG_LONG_LTOH
26 #define _BIT_FIELDS_LTOH
27 #define _IEEE_754
28 #define _CHAR_IS_SIGNED
29 #define _BOOL_ALIGNMENT         1
30 #define _CHAR_ALIGNMENT         1
31 #define _SHORT_ALIGNMENT        2
32 #define _INT_ALIGNMENT          4
33 #define _FLOAT_ALIGNMENT        4
34 #define _FLOAT_COMPLEX_ALIGNMENT        4
35
36 #ifdef __amd64__
37 # define _LONG_ALIGNMENT        8
38 # define _LONG_LONG_ALIGNMENT   8
39 # define _DOUBLE_ALIGNMENT      8
40 # define _DOUBLE_COMPLEX_ALIGNMENT      8
41 # define _LONG_DOUBLE_ALIGNMENT 16
42 # define _LONG_DOUBLE_COMPLEX_ALIGNMENT 16
43 # define _POINTER_ALIGNMENT     8
44 # define _MAX_ALIGNMENT         16
45 # define _ALIGNMENT_REQUIRED    1
46 # define _LP64
47 # define _MULTI_DATAMODEL
48 # define __i386_COMPAT
49 #else /* __i386__ */
50 # define _LONG_ALIGNMENT        4
51 # define _LONG_LONG_ALIGNMENT   4
52 # define _DOUBLE_ALIGNMENT      4
53 # define _DOUBLE_COMPLEX_ALIGNMENT      4
54 # define _LONG_DOUBLE_ALIGNMENT 4
55 # define _LONG_DOUBLE_COMPLEX_ALIGNMENT 4
56 # define _POINTER_ALIGNMENT     4
57 # define _MAX_ALIGNMENT         4
58 # define _ALIGNMENT_REQUIRED    0
59 # define _ILP32
60 #endif /* __amd64__ */
61
62 #define _LONG_LONG_ALIGNMENT_32 4
63 #define _SUNOS_VTOC_16
64 #define _DMA_USES_PHYSADDR
65 #define _FIRMWARE_NEEDS_FDISK
66 #define _PSM_MODULES
67 #define _RTC_CONFIG
68 #define _DONT_USE_1275_GENERIC_NAMES
69 #define _HAVE_CPUID_INSN
70
71 #endif /* _SYS_ISA_DEFS_H */