[FIX] Fix the ATOMIC suport.
This commit is contained in:
parent
86d35fe91c
commit
d96343d487
@ -162,11 +162,9 @@ static inline bool __cm_atomic_set(bool *val)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#define __CM_SAVER(state) \
|
#define __CM_SAVER(state) \
|
||||||
do { \
|
|
||||||
__val = state, \
|
__val = state, \
|
||||||
__save __attribute__((__cleanup__(__cm_atomic_set))) = \
|
__save __attribute__((__cleanup__(__cm_atomic_set))) = \
|
||||||
__cm_atomic_set(&__val); \
|
__cm_atomic_set(&__val)
|
||||||
} while (0)
|
|
||||||
|
|
||||||
#endif /* !defined(__DOXYGEN) */
|
#endif /* !defined(__DOXYGEN) */
|
||||||
|
|
||||||
@ -217,9 +215,7 @@ do { \
|
|||||||
#define CM_ATOMIC_BLOCK()
|
#define CM_ATOMIC_BLOCK()
|
||||||
#else /* defined(__DOXYGEN__) */
|
#else /* defined(__DOXYGEN__) */
|
||||||
#define CM_ATOMIC_BLOCK() \
|
#define CM_ATOMIC_BLOCK() \
|
||||||
do { \
|
for (bool ___CM_SAVER(true), __my = true; __my; __my = false)
|
||||||
for (bool ___CM_SAVER(true), __my = true; __my; __my = false); \
|
|
||||||
} while (0)
|
|
||||||
#endif /* defined(__DOXYGEN__) */
|
#endif /* defined(__DOXYGEN__) */
|
||||||
|
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user