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