blob: 8bfed5979bf2f77ad7f7806e3464a486eeec05a3 [file] [log] [blame]
Jens Axboeebac4652005-12-08 15:25:21 +01001#ifndef ARCH_PPC_H
2#define ARCH_PPH_H
3
4#define ARCH (arch_ppc)
5
6#ifndef __NR_ioprio_set
7#define __NR_ioprio_set 273
8#define __NR_ioprio_get 274
9#endif
10
11#ifndef __NR_fadvise64
12#define __NR_fadvise64 233
13#endif
14
Jens Axboe8756e4d2006-05-27 20:24:53 +020015#ifndef __NR_sys_splice
16#define __NR_sys_splice 283
17#define __NR_sys_tee 284
18#define __NR_sys_vmsplice 285
19#endif
20
Jens Axboeebac4652005-12-08 15:25:21 +010021#define nop do { } while (0)
22
23static inline int __ilog2(unsigned long bitmask)
24{
25 int lz;
26
27 asm ("cntlzw %0,%1" : "=r" (lz) : "r" (bitmask));
28 return 31 - lz;
29}
30
31static inline int ffz(unsigned long bitmask)
32{
33 if ((bitmask = ~bitmask) == 0)
34 return 32;
35 return __ilog2(bitmask & -bitmask);
36}
37
38#endif