]>
Commit | Line | Data |
---|---|---|
2bd0ea18 | 1 | /* |
da23017d NS |
2 | * Copyright (c) 2000-2001,2005 Silicon Graphics, Inc. |
3 | * All Rights Reserved. | |
dfc130f3 | 4 | * |
da23017d NS |
5 | * This program is free software; you can redistribute it and/or |
6 | * modify it under the terms of the GNU General Public License as | |
2bd0ea18 | 7 | * published by the Free Software Foundation. |
dfc130f3 | 8 | * |
da23017d NS |
9 | * This program is distributed in the hope that it would be useful, |
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 | * GNU General Public License for more details. | |
dfc130f3 | 13 | * |
da23017d NS |
14 | * You should have received a copy of the GNU General Public License |
15 | * along with this program; if not, write the Free Software Foundation, | |
16 | * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | |
2bd0ea18 NS |
17 | */ |
18 | ||
19 | #define bitize(s) ((s) * NBBY) | |
20 | #define bitsz(t) bitize(sizeof(t)) | |
21 | #define bitszof(x,y) bitize(szof(x,y)) | |
22 | #define byteize(s) ((s) / NBBY) | |
23 | #define bitoffs(s) ((s) % NBBY) | |
984af2e1 | 24 | #define byteize_up(s) (((s) + NBBY - 1) / NBBY) |
2bd0ea18 NS |
25 | |
26 | #define BVUNSIGNED 0 | |
27 | #define BVSIGNED 1 | |
28 | ||
14f8b681 | 29 | extern int64_t getbitval(void *obj, int bitoff, int nbits, int flags); |
984af2e1 DW |
30 | extern void setbitval(void *obuf, int bitoff, int nbits, void *ibuf); |
31 | extern int getbit_l(char *ptr, int bit); | |
32 | extern void setbit_l(char *ptr, int bit, int val); |