xref: /xnu-10063.101.15/bsd/arm/_param.h (revision 94d3b452840153a99b38a3a9659680b2a006908e)
1*94d3b452SApple OSS Distributions /*
2*94d3b452SApple OSS Distributions  * Copyright (c) 2006-2007 Apple Inc. All rights reserved.
3*94d3b452SApple OSS Distributions  */
4*94d3b452SApple OSS Distributions 
5*94d3b452SApple OSS Distributions #ifndef _ARM__PARAM_H_
6*94d3b452SApple OSS Distributions #define _ARM__PARAM_H_
7*94d3b452SApple OSS Distributions 
8*94d3b452SApple OSS Distributions #if defined (__arm__) || defined (__arm64__)
9*94d3b452SApple OSS Distributions 
10*94d3b452SApple OSS Distributions #include <arm/_types.h>
11*94d3b452SApple OSS Distributions 
12*94d3b452SApple OSS Distributions /*
13*94d3b452SApple OSS Distributions  * Round p (pointer or byte index) up to a correctly-aligned value for all
14*94d3b452SApple OSS Distributions  * data types (int, long, ...).   The result is unsigned int and must be
15*94d3b452SApple OSS Distributions  * cast to any desired pointer type.
16*94d3b452SApple OSS Distributions  */
17*94d3b452SApple OSS Distributions #define __DARWIN_ALIGNBYTES     (sizeof(__darwin_size_t) - 1)
18*94d3b452SApple OSS Distributions #define __DARWIN_ALIGN(p)       ((__darwin_size_t)((__darwin_size_t)(p) + __DARWIN_ALIGNBYTES) &~ __DARWIN_ALIGNBYTES)
19*94d3b452SApple OSS Distributions 
20*94d3b452SApple OSS Distributions #define      __DARWIN_ALIGNBYTES32     (sizeof(__uint32_t) - 1)
21*94d3b452SApple OSS Distributions #define       __DARWIN_ALIGN32(p)       ((__darwin_size_t)((__darwin_size_t)(p) + __DARWIN_ALIGNBYTES32) &~ __DARWIN_ALIGNBYTES32)
22*94d3b452SApple OSS Distributions 
23*94d3b452SApple OSS Distributions #endif /* defined (__arm__) || defined (__arm64__) */
24*94d3b452SApple OSS Distributions 
25*94d3b452SApple OSS Distributions #endif /* _ARM__PARAM_H_ */
26