mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Fixes to merge between 5.1-main and 5.1-marvel
This commit is contained in:
@ -35,7 +35,7 @@
|
|||||||
#ifdef HAVE_INLINE
|
#ifdef HAVE_INLINE
|
||||||
|
|
||||||
#define make_atomic_add(S) \
|
#define make_atomic_add(S) \
|
||||||
static inline int ## S my_atomic_add ## S( \
|
STATIC_INLINE int ## S my_atomic_add ## S( \
|
||||||
int ## S volatile *a, int ## S v) \
|
int ## S volatile *a, int ## S v) \
|
||||||
{ \
|
{ \
|
||||||
make_atomic_add_body(S); \
|
make_atomic_add_body(S); \
|
||||||
@ -43,7 +43,7 @@ static inline int ## S my_atomic_add ## S( \
|
|||||||
}
|
}
|
||||||
|
|
||||||
#define make_atomic_swap(S) \
|
#define make_atomic_swap(S) \
|
||||||
static inline int ## S my_atomic_swap ## S( \
|
STATIC_INLINE int ## S my_atomic_swap ## S( \
|
||||||
int ## S volatile *a, int ## S v) \
|
int ## S volatile *a, int ## S v) \
|
||||||
{ \
|
{ \
|
||||||
make_atomic_swap_body(S); \
|
make_atomic_swap_body(S); \
|
||||||
@ -51,7 +51,7 @@ static inline int ## S my_atomic_swap ## S( \
|
|||||||
}
|
}
|
||||||
|
|
||||||
#define make_atomic_cas(S) \
|
#define make_atomic_cas(S) \
|
||||||
static inline int my_atomic_cas ## S(int ## S volatile *a, \
|
STATIC_INLINE int my_atomic_cas ## S(int ## S volatile *a, \
|
||||||
int ## S *cmp, int ## S set) \
|
int ## S *cmp, int ## S set) \
|
||||||
{ \
|
{ \
|
||||||
int8 ret; \
|
int8 ret; \
|
||||||
@ -60,7 +60,7 @@ static inline int my_atomic_cas ## S(int ## S volatile *a, \
|
|||||||
}
|
}
|
||||||
|
|
||||||
#define make_atomic_load(S) \
|
#define make_atomic_load(S) \
|
||||||
static inline int ## S my_atomic_load ## S(int ## S volatile *a) \
|
STATIC_INLINE int ## S my_atomic_load ## S(int ## S volatile *a) \
|
||||||
{ \
|
{ \
|
||||||
int ## S ret; \
|
int ## S ret; \
|
||||||
make_atomic_load_body(S); \
|
make_atomic_load_body(S); \
|
||||||
@ -68,7 +68,7 @@ static inline int ## S my_atomic_load ## S(int ## S volatile *a) \
|
|||||||
}
|
}
|
||||||
|
|
||||||
#define make_atomic_store(S) \
|
#define make_atomic_store(S) \
|
||||||
static inline void my_atomic_store ## S( \
|
STATIC_INLINE void my_atomic_store ## S( \
|
||||||
int ## S volatile *a, int ## S v) \
|
int ## S volatile *a, int ## S v) \
|
||||||
{ \
|
{ \
|
||||||
make_atomic_store_body(S); \
|
make_atomic_store_body(S); \
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
Some useful bit functions
|
Some useful bit functions
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
C_MODE_START
|
||||||
#ifdef HAVE_INLINE
|
#ifdef HAVE_INLINE
|
||||||
|
|
||||||
extern const char _my_bits_nbits[256];
|
extern const char _my_bits_nbits[256];
|
||||||
@ -97,11 +98,12 @@ STATIC_INLINE uint32 my_reverse_bits(uint32 key)
|
|||||||
_my_bits_reverse_table[(key>>24) ];
|
_my_bits_reverse_table[(key>>24) ];
|
||||||
}
|
}
|
||||||
|
|
||||||
#else
|
#else /* HAVE_INLINE */
|
||||||
extern uint my_bit_log2(ulong value);
|
extern uint my_bit_log2(ulong value);
|
||||||
extern uint32 my_round_up_to_next_power(uint32 v);
|
extern uint32 my_round_up_to_next_power(uint32 v);
|
||||||
uint32 my_clear_highest_bit(uint32 v);
|
uint32 my_clear_highest_bit(uint32 v);
|
||||||
uint32 my_reverse_bits(uint32 key);
|
uint32 my_reverse_bits(uint32 key);
|
||||||
extern uint my_count_bits(ulonglong v);
|
extern uint my_count_bits(ulonglong v);
|
||||||
extern uint my_count_bits_ushort(ushort v);
|
extern uint my_count_bits_ushort(ushort v);
|
||||||
#endif
|
#endif /* HAVE_INLINE */
|
||||||
|
C_MODE_END
|
||||||
|
@ -98,7 +98,7 @@ SET(CLIENT_SOURCES ../mysys/array.c ../strings/bchange.c ../strings/bmove.c
|
|||||||
../strings/strtoll.c ../strings/strtoull.c ../strings/strxmov.c ../strings/strxnmov.c
|
../strings/strtoll.c ../strings/strtoull.c ../strings/strxmov.c ../strings/strxnmov.c
|
||||||
../mysys/thr_mutex.c ../mysys/typelib.c ../vio/vio.c ../vio/viosocket.c
|
../mysys/thr_mutex.c ../mysys/typelib.c ../vio/vio.c ../vio/viosocket.c
|
||||||
../vio/viossl.c ../vio/viosslfactories.c ../strings/xml.c
|
../vio/viossl.c ../vio/viosslfactories.c ../strings/xml.c
|
||||||
../mysys/my_getsystime.c ${LIB_SOURCES})
|
../mysys/my_getsystime.c ../mysys/my_sync.c ${LIB_SOURCES})
|
||||||
|
|
||||||
# Need to set USE_TLS for building the DLL, since __declspec(thread)
|
# Need to set USE_TLS for building the DLL, since __declspec(thread)
|
||||||
# approach to thread local storage does not work properly in DLLs.
|
# approach to thread local storage does not work properly in DLLs.
|
||||||
|
Reference in New Issue
Block a user