diff options
| author | 2025-09-14 11:43:05 +0200 | |
|---|---|---|
| committer | 2025-09-14 11:43:05 +0200 | |
| commit | 5753e393954aca532abd6a5c10d6e8ab9a96c96c (patch) | |
| tree | a0eaa1b5b4dcbb30144868bc1251f0e50b17793b /common.h | |
| parent | 92c6943fa81145050b083348831a03154be2210c (diff) | |
regset doesnt need all those macros
Diffstat (limited to 'common.h')
| -rw-r--r-- | common.h | 7 |
1 files changed, 2 insertions, 5 deletions
@@ -489,12 +489,9 @@ bsiter(uint *i, struct bitset bs[/*siz*/], uint siz) #define bs_each(T, var, bs, siz) for (T (var) = 0; bsiter(&(var), (bs), (siz)); ++(var)) typedef uvlong regset; -#define rsset(S, r) ((S) | 1ull << (r)) -#define rsclr(S, r) ((S) & ~(1ull << (r))) +#define rsset(pS, r) (*(pS) |= 1ull << (r)) +#define rsclr(pS, r) (*(pS) &=~ (1ull << (r))) #define rstest(S, r) ((S) >> (r) & 1) -#define rsminus(A, B) ((A) & ~(B)) -#define rsand(A, B) ((A) & (B)) -#define rsunion(A, B) ((A) | (B)) static inline bool rsiter(int *i, uvlong rs) { |