Make UEFI boot-platform build again
[haiku.git] / headers / private / fs_shell / fssh_atomic.h
blob0e18ed19217c4856611d874de0cec4c4a968c5bf
1 /* Modules Definitions
2 **
3 ** Distributed under the terms of the MIT License.
4 */
6 #ifndef _FSSH_ATOMIC_H
7 #define _FSSH_ATOMIC_H
10 #include "fssh_types.h"
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
18 void fssh_atomic_set(int32_t* value, int32_t newValue);
19 int32_t fssh_atomic_get_and_set(int32_t* value, int32_t newValue);
20 int32_t fssh_atomic_test_and_set(int32_t *value, int32_t newValue,
21 int32_t testAgainst);
22 int32_t fssh_atomic_add(int32_t *value, int32_t addValue);
23 int32_t fssh_atomic_and(int32_t *value, int32_t andValue);
24 int32_t fssh_atomic_or(int32_t *value, int32_t orValue);
25 int32_t fssh_atomic_get(int32_t *value);
27 void fssh_atomic_set64(int64_t* value, int64_t newValue);
28 int64_t fssh_atomic_get_and_set64(int64_t* value, int64_t newValue);
29 int64_t fssh_atomic_test_and_set64(int64_t *value, int64_t newValue,
30 int64_t testAgainst);
31 int64_t fssh_atomic_add64(int64_t *value, int64_t addValue);
32 int64_t fssh_atomic_and64(int64_t *value, int64_t andValue);
33 int64_t fssh_atomic_or64(int64_t *value, int64_t orValue);
34 int64_t fssh_atomic_get64(int64_t *value);
36 #ifdef __cplusplus
38 #endif
41 #endif /* _FSSH_ATOMIC_H */