include: Use force_align_arg_pointer on MacOS to fix the stack on entry to Wine.
[wine/multimedia.git] / include / poppack.h
blobe7a273f031c759a4c3a13d9a9d3164e8c2ce9ea2
1 /*
2 * Copyright (C) 1999 Patrik Stridvall
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #if defined(__WINE_PSHPACK_H15)
20 # ifndef __WINE_INTERNAL_POPPACK
21 # undef __WINE_PSHPACK_H15
22 # endif
23 /* Depth == 15 */
25 # if __WINE_PSHPACK_H14 == 1
26 # pragma pack(1)
27 # elif __WINE_PSHPACK_H14 == 2
28 # pragma pack(2)
29 # elif __WINE_PSHPACK_H14 == 8
30 # pragma pack(8)
31 # else
32 # pragma pack(4)
33 # endif
35 #elif defined(__WINE_PSHPACK_H14)
36 # ifndef __WINE_INTERNAL_POPPACK
37 # undef __WINE_PSHPACK_H14
38 # endif
39 /* Depth == 14 */
41 # if __WINE_PSHPACK_H13 == 1
42 # pragma pack(1)
43 # elif __WINE_PSHPACK_H13 == 2
44 # pragma pack(2)
45 # elif __WINE_PSHPACK_H13 == 8
46 # pragma pack(8)
47 # else
48 # pragma pack(4)
49 # endif
51 #elif defined(__WINE_PSHPACK_H13)
52 # ifndef __WINE_INTERNAL_POPPACK
53 # undef __WINE_PSHPACK_H13
54 # endif
55 /* Depth == 13 */
57 # if __WINE_PSHPACK_H12 == 1
58 # pragma pack(1)
59 # elif __WINE_PSHPACK_H12 == 2
60 # pragma pack(2)
61 # elif __WINE_PSHPACK_H12 == 8
62 # pragma pack(8)
63 # else
64 # pragma pack(4)
65 # endif
67 #elif defined(__WINE_PSHPACK_H12)
68 # ifndef __WINE_INTERNAL_POPPACK
69 # undef __WINE_PSHPACK_H12
70 # endif
71 /* Depth == 12 */
73 # if __WINE_PSHPACK_H11 == 1
74 # pragma pack(1)
75 # elif __WINE_PSHPACK_H11 == 2
76 # pragma pack(2)
77 # elif __WINE_PSHPACK_H11 == 8
78 # pragma pack(8)
79 # else
80 # pragma pack(4)
81 # endif
83 #elif defined(__WINE_PSHPACK_H11)
84 # ifndef __WINE_INTERNAL_POPPACK
85 # undef __WINE_PSHPACK_H11
86 # endif
87 /* Depth == 11 */
89 # if __WINE_PSHPACK_H10 == 1
90 # pragma pack(1)
91 # elif __WINE_PSHPACK_H10 == 2
92 # pragma pack(2)
93 # elif __WINE_PSHPACK_H10 == 8
94 # pragma pack(8)
95 # else
96 # pragma pack(4)
97 # endif
99 #elif defined(__WINE_PSHPACK_H10)
100 # ifndef __WINE_INTERNAL_POPPACK
101 # undef __WINE_PSHPACK_H10
102 # endif
103 /* Depth == 10 */
105 # if __WINE_PSHPACK_H9 == 1
106 # pragma pack(1)
107 # elif __WINE_PSHPACK_H9 == 2
108 # pragma pack(2)
109 # elif __WINE_PSHPACK_H9 == 8
110 # pragma pack(8)
111 # else
112 # pragma pack(4)
113 # endif
115 #elif defined(__WINE_PSHPACK_H9)
116 # ifndef __WINE_INTERNAL_POPPACK
117 # undef __WINE_PSHPACK_H9
118 # endif
119 /* Depth == 9 */
121 # if __WINE_PSHPACK_H8 == 1
122 # pragma pack(1)
123 # elif __WINE_PSHPACK_H8 == 2
124 # pragma pack(2)
125 # elif __WINE_PSHPACK_H8 == 8
126 # pragma pack(8)
127 # else
128 # pragma pack(4)
129 # endif
131 #elif defined(__WINE_PSHPACK_H8)
132 # ifndef __WINE_INTERNAL_POPPACK
133 # undef __WINE_PSHPACK_H8
134 # endif
135 /* Depth == 8 */
137 # if __WINE_PSHPACK_H7 == 1
138 # pragma pack(1)
139 # elif __WINE_PSHPACK_H7 == 2
140 # pragma pack(2)
141 # elif __WINE_PSHPACK_H7 == 8
142 # pragma pack(8)
143 # else
144 # pragma pack(4)
145 # endif
147 #elif defined(__WINE_PSHPACK_H7)
148 # ifndef __WINE_INTERNAL_POPPACK
149 # undef __WINE_PSHPACK_H7
150 # endif
151 /* Depth == 7 */
153 # if __WINE_PSHPACK_H6 == 1
154 # pragma pack(1)
155 # elif __WINE_PSHPACK_H6 == 2
156 # pragma pack(2)
157 # elif __WINE_PSHPACK_H6 == 8
158 # pragma pack(8)
159 # else
160 # pragma pack(4)
161 # endif
163 #elif defined(__WINE_PSHPACK_H6)
164 # ifndef __WINE_INTERNAL_POPPACK
165 # undef __WINE_PSHPACK_H6
166 # endif
167 /* Depth == 6 */
169 # if __WINE_PSHPACK_H5 == 1
170 # pragma pack(1)
171 # elif __WINE_PSHPACK_H5 == 2
172 # pragma pack(2)
173 # elif __WINE_PSHPACK_H5 == 8
174 # pragma pack(8)
175 # else
176 # pragma pack(4)
177 # endif
179 #elif defined(__WINE_PSHPACK_H5)
180 # ifndef __WINE_INTERNAL_POPPACK
181 # undef __WINE_PSHPACK_H5
182 # endif
183 /* Depth == 5 */
185 # if __WINE_PSHPACK_H4 == 1
186 # pragma pack(1)
187 # elif __WINE_PSHPACK_H4 == 2
188 # pragma pack(2)
189 # elif __WINE_PSHPACK_H4 == 8
190 # pragma pack(8)
191 # else
192 # pragma pack(4)
193 # endif
195 #elif defined(__WINE_PSHPACK_H4)
196 # ifndef __WINE_INTERNAL_POPPACK
197 # undef __WINE_PSHPACK_H4
198 # endif
199 /* Depth == 4 */
201 # if __WINE_PSHPACK_H3 == 1
202 # pragma pack(1)
203 # elif __WINE_PSHPACK_H3 == 2
204 # pragma pack(2)
205 # elif __WINE_PSHPACK_H3 == 8
206 # pragma pack(8)
207 # else
208 # pragma pack(4)
209 # endif
211 #elif defined(__WINE_PSHPACK_H3)
212 # ifndef __WINE_INTERNAL_POPPACK
213 # undef __WINE_PSHPACK_H3
214 # endif
215 /* Depth == 3 */
217 # if __WINE_PSHPACK_H2 == 1
218 # pragma pack(1)
219 # elif __WINE_PSHPACK_H2 == 2
220 # pragma pack(2)
221 # elif __WINE_PSHPACK_H2 == 8
222 # pragma pack(8)
223 # else
224 # pragma pack(4)
225 # endif
227 #elif defined(__WINE_PSHPACK_H2)
228 # ifndef __WINE_INTERNAL_POPPACK
229 # undef __WINE_PSHPACK_H2
230 # endif
231 /* Depth == 2 */
233 # if __WINE_PSHPACK_H == 1
234 # pragma pack(1)
235 # elif __WINE_PSHPACK_H == 2
236 # pragma pack(2)
237 # elif __WINE_PSHPACK_H == 8
238 # pragma pack(8)
239 # else
240 # pragma pack(4)
241 # endif
243 #elif defined(__WINE_PSHPACK_H)
244 # ifndef __WINE_INTERNAL_POPPACK
245 # undef __WINE_PSHPACK_H
246 # endif
247 /* Depth == 1 */
249 # if defined(__SUNPRO_CC)
250 # warning "Assuming a default alignment of 4"
251 # pragma pack(4)
252 # else
253 # pragma pack()
254 # endif
256 #else
257 /* Depth == 0 ! */
259 #error "Popping alignment isn't possible since no alignment has been pushed"
261 #endif
263 #undef __WINE_INTERNAL_POPPACK