1 /* Declarations describing the host machine and C compiler.
2 Copyright (C) 1995, 1996 Markus Armbruster
11 /* A size handled efficiently by malloc(), at least 1K. */
12 #define PREF_MALLOC_SIZE 2048
15 /* GNU C's __attribute__ */
17 /* According to the documentation, the attributes we are interested in
18 work with 2.5, but we encountered trouble before 2.7. */
19 #if defined (__GNUC__) && __GNUC__ >= 2 && __GNUC_MINOR__ >= 7
20 # define HAVE_ATTRIBUTE 1
21 # define ATTRIBUTE(attrs) __attribute__ (attrs)
23 # define ATTRIBUTE(attrs)
29 /* A type that has most constrained alignment. */
34 } aligned_type ATTRIBUTE ((aligned));
36 /* Inquiring about the alignment. */
38 # define ALIGNOF(type) __alignof__ (type)
40 # define ALIGNOF(type) offsetof (struct { char c; type d; }, d)
43 /* Maximal alignment required for any type. */
44 #define MAX_ALIGN ALIGNOF (aligned_type)