Subversion Repositories Kolibri OS

Rev

Rev 5270 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
5270 serge 1
/* const.h: Macros for dealing with constants.  */
2
 
3
#ifndef _LINUX_CONST_H
4
#define _LINUX_CONST_H
5
 
6
/* Some constant macros are used in both assembler and
7
 * C code.  Therefore we cannot annotate them always with
8
 * 'UL' and other type specifiers unilaterally.  We
9
 * use the following macros to deal with this.
10
 *
11
 * Similarly, _AT() will cast an expression with a type in C, but
12
 * leave it unchanged in asm.
13
 */
14
 
15
#ifdef __ASSEMBLY__
16
#define _AC(X,Y)	X
17
#define _AT(T,X)	X
18
#else
19
#define __AC(X,Y)	(X##Y)
20
#define _AC(X,Y)	__AC(X,Y)
21
#define _AT(T,X)	((T)(X))
22
#endif
23
 
24
#define _BITUL(x)	(_AC(1,UL) << (x))
25
#define _BITULL(x)	(_AC(1,ULL) << (x))
26
 
27
#endif /* !(_LINUX_CONST_H) */