Browse Source

TT#131402 convert bitfield functions to `bool` type

Change-Id: If7f59a8a8437752c13909f6d6a09f8056ac4efbf
pull/1373/head
Richard Fuchs 4 years ago
parent
commit
7699e1da64
1 changed files with 15 additions and 14 deletions
  1. +15
    -14
      include/aux.h

+ 15
- 14
include/aux.h View File

@ -17,6 +17,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <stdbool.h>
#include "compat.h"
#include "auxlib.h"
@ -354,26 +355,26 @@ INLINE void thread_create_detach(void (*f)(void *), void *a, const char *name) {
/*** ATOMIC BITFIELD OPERATIONS ***/
/* checks if at least one of the flags is set */
INLINE int bf_isset(const volatile unsigned int *u, unsigned int f) {
INLINE bool bf_isset(const volatile unsigned int *u, unsigned int f) {
if ((g_atomic_int_get(u) & f))
return -1;
return 0;
return true;
return false;
}
/* checks if all of the flags are set */
INLINE int bf_areset(const volatile unsigned int *u, unsigned int f) {
INLINE bool bf_areset(const volatile unsigned int *u, unsigned int f) {
if ((g_atomic_int_get(u) & f) == f)
return -1;
return 0;
return true;
return false;
}
/* returns true if at least one of the flags was set already */
INLINE int bf_set(volatile unsigned int *u, unsigned int f) {
return (g_atomic_int_or(u, f) & f) ? -1 : 0;
INLINE bool bf_set(volatile unsigned int *u, unsigned int f) {
return (g_atomic_int_or(u, f) & f) ? true : false;
}
/* returns true if at least one of the flags was set */
INLINE int bf_clear(volatile unsigned int *u, unsigned int f) {
return (g_atomic_int_and(u, ~f) & f) ? -1 : 0;
INLINE bool bf_clear(volatile unsigned int *u, unsigned int f) {
return (g_atomic_int_and(u, ~f) & f) ? true : false;
}
INLINE void bf_set_clear(volatile unsigned int *u, unsigned int f, int cond) {
INLINE void bf_set_clear(volatile unsigned int *u, unsigned int f, bool cond) {
if (cond)
bf_set(u, f);
else
@ -402,13 +403,13 @@ INLINE void bf_copy_same(volatile unsigned int *u, const volatile unsigned int *
#define BIT_ARRAY_DECLARE(name, size) \
volatile unsigned int name[((size) + sizeof(int) * 8 - 1) / (sizeof(int) * 8)]
INLINE int bit_array_isset(const volatile unsigned int *name, unsigned int bit) {
INLINE bool bit_array_isset(const volatile unsigned int *name, unsigned int bit) {
return bf_isset(&name[bit / (sizeof(int) * 8)], 1U << (bit % (sizeof(int) * 8)));
}
INLINE int bit_array_set(volatile unsigned int *name, unsigned int bit) {
INLINE bool bit_array_set(volatile unsigned int *name, unsigned int bit) {
return bf_set(&name[bit / (sizeof(int) * 8)], 1U << (bit % (sizeof(int) * 8)));
}
INLINE int bit_array_clear(volatile unsigned int *name, unsigned int bit) {
INLINE bool bit_array_clear(volatile unsigned int *name, unsigned int bit) {
return bf_clear(&name[bit / (sizeof(int) * 8)], 1U << (bit % (sizeof(int) * 8)));
}


Loading…
Cancel
Save