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