Use intptr_t note ptrdiff_t when storing flags in the bottom bits of

pointers.

Obtained from:	CheriBSD (e3a69027cc)
Sponsored by:	DARPA, AFRL
This commit is contained in:
Brooks Davis 2016-01-29 01:22:12 +00:00
parent 0c370c1a96
commit 45308eec4a
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=295031
2 changed files with 6 additions and 6 deletions

View File

@ -138,11 +138,11 @@ typedef struct htab { /* Memory resident data structure */
#define ALL_SET ((u_int32_t)0xFFFFFFFF)
#define ALL_CLEAR 0
#define PTROF(X) ((BUFHEAD *)((ptrdiff_t)(X)&~0x3))
#define ISMOD(X) ((u_int32_t)(ptrdiff_t)(X)&0x1)
#define DOMOD(X) ((X) = (char *)((ptrdiff_t)(X)|0x1))
#define ISDISK(X) ((u_int32_t)(ptrdiff_t)(X)&0x2)
#define DODISK(X) ((X) = (char *)((ptrdiff_t)(X)|0x2))
#define PTROF(X) ((BUFHEAD *)((intptr_t)(X)&~0x3))
#define ISMOD(X) ((u_int32_t)(intptr_t)(X)&0x1)
#define DOMOD(X) ((X) = (char *)((intptr_t)(X)|0x1))
#define ISDISK(X) ((u_int32_t)(intptr_t)(X)&0x2)
#define DODISK(X) ((X) = (char *)((intptr_t)(X)|0x2))
#define BITS_PER_MAP 32

View File

@ -138,7 +138,7 @@ __get_buf(HTAB *hashp, u_int32_t addr,
return (NULL);
if (!prev_bp)
segp[segment_ndx] =
(BUFHEAD *)((ptrdiff_t)bp | is_disk_mask);
(BUFHEAD *)((intptr_t)bp | is_disk_mask);
} else {
BUF_REMOVE(bp);
MRU_INSERT(bp);