1538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber/*
2538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber *	Copyright (c) 2004-2010 Alex Pankratov. All rights reserved.
3538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber *
4538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber *	Hierarchical memory allocator, 1.2.1
5538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber *	http://swapped.cc/halloc
6538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber */
7538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
8538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber/*
9538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber *	The program is distributed under terms of BSD license.
10538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber *	You can obtain the copy of the license by visiting:
11538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber *
12538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber *	http://www.opensource.org/licenses/bsd-license.php
13538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber */
14538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
15538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber#ifndef _LIBP_ALIGN_H_
16538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber#define _LIBP_ALIGN_H_
17538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
18538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber/*
19538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber *	a type with the most strict alignment requirements
20538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber */
21538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huberunion max_align
22538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber{
23538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber	char   c;
24538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber	short  s;
25538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber	long   l;
26538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber	int    i;
27538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber	float  f;
28538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber	double d;
29538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber	void * v;
30538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber	void (*q)(void);
31538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber};
32538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
33538f6170b788de7408b06efc6613dc98579aa6a6Andreas Hubertypedef union max_align max_align_t;
34538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
35538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber#endif
36538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber
37