X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmapi%2Fu_current.h;h=9a79f0bf93acec2cd985fac262cfe7a24f5c0471;hb=b13d5265cce6b9879af197b629c188577ae0be2a;hp=f9cffd8c3d0c1bcd67bf2969186fdfc01fefdd80;hpb=d5e9426b9605264608e0b1204ebf818103f1f011;p=mesa.git diff --git a/src/mapi/u_current.h b/src/mapi/u_current.h index f9cffd8c3d0..9a79f0bf93a 100644 --- a/src/mapi/u_current.h +++ b/src/mapi/u_current.h @@ -1,47 +1,46 @@ #ifndef _U_CURRENT_H_ #define _U_CURRENT_H_ +#include "c99_compat.h" +#include "util/macros.h" + + #if defined(MAPI_MODE_UTIL) || defined(MAPI_MODE_GLAPI) || \ defined(MAPI_MODE_BRIDGE) #include "glapi/glapi.h" -/* ugly renames to match glapi.h */ -#define mapi_table _glapi_table - -#ifdef GLX_USE_TLS +#ifdef USE_ELF_TLS #define u_current_table _glapi_tls_Dispatch -#define u_current_user _glapi_tls_Context +#define u_current_context _glapi_tls_Context #else #define u_current_table _glapi_Dispatch -#define u_current_user _glapi_Context +#define u_current_context _glapi_Context #endif -#define u_current_get_internal _glapi_get_dispatch -#define u_current_get_user_internal _glapi_get_context +#define u_current_get_table_internal _glapi_get_dispatch +#define u_current_get_context_internal _glapi_get_context #define u_current_table_tsd _gl_DispatchTSD #else /* MAPI_MODE_UTIL || MAPI_MODE_GLAPI || MAPI_MODE_BRIDGE */ -#include "u_compiler.h" - -struct mapi_table; +struct _glapi_table; -#ifdef GLX_USE_TLS +#ifdef USE_ELF_TLS -extern __thread struct mapi_table *u_current_table +extern __thread struct _glapi_table *u_current_table __attribute__((tls_model("initial-exec"))); -extern __thread void *u_current_user +extern __thread void *u_current_context __attribute__((tls_model("initial-exec"))); -#else /* GLX_USE_TLS */ +#else /* USE_ELF_TLS */ -extern struct mapi_table *u_current_table; -extern void *u_current_user; +extern struct _glapi_table *u_current_table; +extern void *u_current_context; -#endif /* GLX_USE_TLS */ +#endif /* USE_ELF_TLS */ #endif /* MAPI_MODE_UTIL || MAPI_MODE_GLAPI || MAPI_MODE_BRIDGE */ @@ -52,35 +51,35 @@ void u_current_destroy(void); void -u_current_set(const struct mapi_table *tbl); +u_current_set_table(const struct _glapi_table *tbl); -struct mapi_table * -u_current_get_internal(void); +struct _glapi_table * +u_current_get_table_internal(void); void -u_current_set_user(const void *ptr); +u_current_set_context(const void *ptr); void * -u_current_get_user_internal(void); +u_current_get_context_internal(void); -static INLINE const struct mapi_table * -u_current_get(void) +static inline const struct _glapi_table * +u_current_get_table(void) { -#ifdef GLX_USE_TLS +#ifdef USE_ELF_TLS return u_current_table; #else return (likely(u_current_table) ? - u_current_table : u_current_get_internal()); + u_current_table : u_current_get_table_internal()); #endif } -static INLINE const void * -u_current_get_user(void) +static inline const void * +u_current_get_context(void) { -#ifdef GLX_USE_TLS - return u_current_user; +#ifdef USE_ELF_TLS + return u_current_context; #else - return likely(u_current_user) ? u_current_user : u_current_get_user_internal(); + return likely(u_current_context) ? u_current_context : u_current_get_context_internal(); #endif }