File: bit.h

package info (click to toggle)
xfsprogs 6.17.0-2
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 11,324 kB
  • sloc: ansic: 167,334; sh: 4,604; makefile: 1,336; python: 835; cpp: 5
file content (20 lines) | stat: -rw-r--r-- 619 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (c) 2000-2001,2005 Silicon Graphics, Inc.
 * All Rights Reserved.
 */

#define	bitize(s)	((s) * NBBY)
#define	bitsz(t)	bitize(sizeof(t))
#define	bitszof(x,y)	bitize(szof(x,y))
#define	byteize(s)	((s) / NBBY)
#define	bitoffs(s)	((s) % NBBY)
#define	byteize_up(s)	(((s) + NBBY - 1) / NBBY)

#define	BVUNSIGNED	0
#define	BVSIGNED	1

extern int64_t		getbitval(void *obj, int bitoff, int nbits, int flags);
extern void		setbitval(void *obuf, int bitoff, int nbits, void *ibuf);
extern int		getbit_l(char *ptr, int bit);
extern void		setbit_l(char *ptr, int bit, int val);