ReactOS 0.4.16-dev-197-g92996da
align.h
Go to the documentation of this file.
1/* @(#)align.h 1.11 13/07/23 Copyright 1995-2013 J. Schilling */
2/*
3 * Platform dependent definitions for aligning data.
4 *
5 * Copyright (c) 1995-2013 J. Schilling
6 */
7/*
8 * The contents of this file are subject to the terms of the
9 * Common Development and Distribution License, Version 1.0 only
10 * (the "License"). You may not use this file except in compliance
11 * with the License.
12 *
13 * See the file CDDL.Schily.txt in this distribution for details.
14 * A copy of the CDDL is also available via the Internet at
15 * http://www.opensource.org/licenses/cddl1.txt
16 *
17 * When distributing Covered Code, include this CDDL HEADER in each
18 * file and include the License file CDDL.Schily.txt from this distribution.
19 */
20
21/*
22 * The automatically created included file defines the following macros:
23 *
24 * saligned(a) One parameter aligned for a "short int"
25 * s2aligned(a, b) Both parameters aligned for a "short int"
26 * ialigned(a) One parameter aligned for a "int"
27 * i2aligned(a, b) Both parameters aligned for a "int"
28 * laligned(a) One parameter aligned for a "long"
29 * l2aligned(a, b) Both parameters aligned for a "long"
30 * llaligned(a) One parameter aligned for a "long long"
31 * ll2aligned(a, b) Both parameters aligned for a "long long"
32 * faligned(a) One parameter aligned for a "float"
33 * f2aligned(a, b) Both parameters aligned for a "float"
34 * daligned(a) One parameter aligned for a "double"
35 * d2aligned(a, b) Both parameters aligned for a "double"
36 * paligned(a) One parameter aligned for a "pointer"
37 * p2aligned(a, b) Both parameters aligned for a "pointe"
38 *
39 * salign(x) Align for a "short int"
40 * ialign(x) Align for a "int"
41 * lalign(x) Align for a "long"
42 * llalign(x) Align for a "long long"
43 * falign(x) Align for a "float"
44 * dalign(x) Align for a "double"
45 * palign(x) Align for a "pointer"
46 */
47#ifndef _SCHILY_ALIGN_H
48#define _SCHILY_ALIGN_H
49
50#ifndef _SCHILY_MCONFIG_H
51#include <schily/mconfig.h>
52#endif
53
54#ifndef _SCHILY_UTYPES_H
55#include <schily/utypes.h>
56#endif
57
58#ifdef SCHILY_BUILD /* #defined by Schily makefile system */
59 /*
60 * Include $(SRCROOT)/incs/$(OARCH)/align.h via
61 * -I$(SRCROOT)/incs/$(OARCH)/
62 */
63# include <align.h>
64#else /* !SCHILY_BUILD */
65/*
66 * The stuff for static compilation. Include files from a previous
67 * dynamic autoconfiguration.
68 */
69#ifdef __SUNOS5_SPARC_CC32
70#include <schily/sparc-sunos5-cc/align.h>
71#define __JS_ARCH_ALIGN_INCL
72#endif
73#ifdef __SUNOS5_SPARC_CC64
74#include <schily/sparc-sunos5-cc64/align.h>
75#define __JS_ARCH_ALIGN_INCL
76#endif
77#ifdef __SUNOS5_SPARC_GCC32
78#include <schily/sparc-sunos5-gcc/align.h>
79#define __JS_ARCH_ALIGN_INCL
80#endif
81#ifdef __SUNOS5_SPARC_GCC64
82#include <schily/sparc-sunos5-gcc64/align.h>
83#define __JS_ARCH_ALIGN_INCL
84#endif
85#ifdef __SUNOS5_X86_CC32
86#include <schily/i386-sunos5-cc/align.h>
87#define __JS_ARCH_ALIGN_INCL
88#endif
89#ifdef __SUNOS5_X86_CC64
90#include <schily/i386-sunos5-cc64/align.h>
91#define __JS_ARCH_ALIGN_INCL
92#endif
93#ifdef __SUNOS5_X86_GCC32
94#include <schily/i386-sunos5-gcc/align.h>
95#define __JS_ARCH_ALIGN_INCL
96#endif
97#ifdef __SUNOS5_X86_GCC64
98#include <schily/i386-sunos5-gcc64/align.h>
99#define __JS_ARCH_ALIGN_INCL
100#endif
101
102#ifdef __HPUX_HPPA_CC32
103#include <schily/hppa-hp-ux-cc/align.h>
104#define __JS_ARCH_CONF_INCL
105#endif
106#ifdef __HPUX_HPPA_CC64
107#include <schily/hppa-hp-ux-cc64/align.h>
108#define __JS_ARCH_CONF_INCL
109#endif
110#ifdef __HPUX_HPPA_GCC32
111#include <schily/hppa-hp-ux-gcc/align.h>
112#define __JS_ARCH_CONF_INCL
113#endif
114#ifdef __HPUX_HPPA_GCC64
115#include <schily/hppa-hp-ux-gcc64/align.h>
116#define __JS_ARCH_CONF_INCL
117#endif
118
119#ifdef __LINUX_ARMV6L_GCC32
120#include <schily/armv6l-linux-gcc/align.h>
121#define __JS_ARCH_CONF_INCL
122#endif
123#ifdef __LINUX_ARMV5L_GCC32
124#include <schily/armv6l-linux-gcc/align.h>
125#define __JS_ARCH_CONF_INCL
126#endif
127#ifdef __LINUX_ARMV5TEJL_GCC32
128#include <schily/armv5tejl-linux-gcc/align.h>
129#define __JS_ARCH_CONF_INCL
130#endif
131#ifdef __LINUX_I386_GCC32
132#include <schily/i686-linux-gcc/align.h>
133#define __JS_ARCH_CONF_INCL
134#endif
135#ifdef __LINUX_amd64_GCC64
136#include <schily/x86_64-linux-gcc/align.h>
137#define __JS_ARCH_CONF_INCL
138#endif
139
140#ifdef __MSWIN_X86_CL32
141#include <schily/i686-cygwin32_nt-cl/align.h>
142#define __JS_ARCH_ALIGN_INCL
143#endif
144
145#ifdef __CYGWIN_X86_GCC
146#include <schily/i686-cygwin32_nt-gcc/align.h>
147#define __JS_ARCH_ALIGN_INCL
148#endif
149
150#ifndef __JS_ARCH_ALIGN_INCL
151/*
152 * #error will not work for all compilers (e.g. sunos4)
153 * The following line will abort compilation on all compilers
154 * if none of the above is defined. And that's what we want.
155 */
156Error unconfigured architecture
157
158#include <schily/err_arch.h> /* Avoid "unknown directive" with K&R */
159#endif
160
161#endif /* SCHILY_BUILD */
162
163#ifdef __cplusplus
164extern "C" {
165#endif
166/*
167 * Fake in order to keep the silly hdrchk(1) quiet.
168 */
169#ifdef __cplusplus
170}
171#endif
172
173#endif /* _SCHILY_ALIGN_H */
BOOL Error
Definition: chkdsk.c:66