summaryrefslogtreecommitdiff
path: root/src/mesa/glapi/glapi.h
AgeCommit message (Collapse)Author
2010-03-09glapi: mv table functions to glapi_getproc.c and add local headerGeorge Sapountzis
2010-03-03Remove support for GCC older than 3.3.0Ian Romanick
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2010-03-01glapi.c: misc coscmetic for FreeTSDGeorge Sapountzis
- move out of of the dispatch/context block to after corresponding init functions - use more consistent naming with corresponding init functions - XXX use _glthread_InitTSD() vs (void)_glthread_GetTSD() in _glapi_check_multithread() XXX
2010-03-01glapi.c: mv init_glapi_relocs to glapi_getproc.cGeorge Sapountzis
2010-03-01glapi.c: split check_table to not_null and get_procGeorge Sapountzis
2010-03-01glapi.h: drop dispatch_override prototypesGeorge Sapountzis
cannot find them in mesa tree
2010-03-01glapi.h: misc cosmeticGeorge Sapountzis
- revert context/dispatch order, similar to glapi.c - stray GL_GLEXT_PROTOTYPES
2010-03-01glapi.h: consolidate GET_DISPATCH() and GET_CURRENT_CONTEXT() macrosGeorge Sapountzis
Use likely() macro, as this is what most projects use. Drops GL_CALL define, cannot find it in mesa tree. Also, whitespace cleaunps in glthread.h
2010-02-11glapi: Avoid #including gl.hKristian Høgsberg
It's only used for a couple of integer types and and might conflict with other client API header files.
2010-01-22glapi: clean-up and simplify glapi_nop.c codeBrian Paul
Removed _glapi_noop_enable_warnings() and _glapi_set_warning_func(). Just check the DEBUG env vars and call fprintf(stderr) with a warning message instead.
2009-08-28Put 'extern' first on the line to silence GCC warnings.Ian Romanick
2009-08-25Revert "glapi: Fix a possible race in getting current context/dispatch."Brian Paul
This reverts commit 17090cf3efb0db8fa01b502a9c0df27cbd1a67da. We're reverting this because it causes ABI breakage with the X server. Maybe re-attempt with another patch.
2009-08-24glapi: Fix a possible race in getting current context/dispatch.Chia-I Wu
There is a possbile race that _glapi_Context is reset by another thread after it is tested in GET_CURRENT_CONTEXT but before it is returned. We definitely do not want a lock here to solve the race. To have correct results even under a race, no other threads should reset _glapi_Context (or _glapi_Dispatch). This patch adds a new global variable _glapi_SingleThreaded. Since _glapi_Context or _glapi_Dispatch are no longer reset, _glapi_SingleThreaded is tested instead, before accessing them. DRI drivers compiled with this patch applied will not work with existing libGL.so because of the missing new symbol. If this turns out to be a real problem, this patch should be reverted. Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2008-09-23mesa: refactor: move GetProcAddress code from glapi.c into new ↵Brian Paul
glapi_getproc.c file
2008-09-21mesa: move some glapi bits aroundBrian Paul
Move _glapi_proc typedef from glapitable.h to glapi.h Also, don't include glapitable.h from glapi.h Before we were including the huge glapitable.h file in every .c file.
2006-03-15Need to include glthread.h in glapi.h, not glapi.c so that GET_CURRENT_CONTEXTBrian Paul
is properly defined. Fixes long-standing, but unnoticed thread safety failure. Also, updated comments.
2006-02-10commit to fixup MGL namespacing for XGLDave Airlie
2005-08-10Remove _glapi_check_multithread from the interface exported by the loader toIan Romanick
the driver. The loader now takes care of this for the driver. Remove _glapi_DispatchTSD and give _glapi_Dispatch its semantic (i.e., having a NULL value means that the application is multithreaded and _glapi_get_dispatch must be called). Gut all of the dispatch override code. This removes _glapi_RealDispatch, _glapi_tls_RealDispatch, _glapi_begin_dispatch_override, _glapi_end_dispatch_override, and _glapi_get_override_dispatch. Remove _glapi_get_proc_address, _glapi_get_proc_name, _glapi_get_version, and _glapi_check_table from the loader / driver interface. Reviewed by: Brian Paul
2005-07-28Major rip-up of internal function insertion interface. The oldIan Romanick
_glapi_add_entrypoint has been replaced by a new routine called _glapi_add_dispatch. This new routine dynamically assignes dispatch offsets to functions added. This allows IHVs to add support for extension functions that do not have assigned dispatch offsets. It also means that a driver has no idea what offset will be assigned to a function. The vast majority of the changes in this commit account for that. An additional table, driDispatchRemapTable, is added. Functions not in the Linux OpenGL ABI (i.e., anything not in GL 1.2 + ARB_multitexture) has a fixed offset in this new table. The entry in this table specifies the offset in of the function in the real dispatch table. The internal interface was also bumped from version 20050725 to 20050727. This has been tested with various programs in progs/demos on: radeon (Radeon Mobility M6) r128 (Rage 128 Pro) mga (G400)
2005-04-28Stop gcc-4.0 complaining about "type qualifiers ignored on functionKeith Whitwell
return type".
2005-04-14In GLX_USE_TLS builds, make GET_CURRENT_CONTEXT use the TLS verion of theIan Romanick
variable. Without this, GET_CURRENT_CONTEXT would *always* result in a call to _glapi_get_context (because _glapi_Context is a const pointer to NULL in TLS builds).
2005-04-13Add TLS support to libGL and, by virtue of using glthread.h and GL_CALL, allIan Romanick
DRI drivers. A TLS enabled libGL can load a TLS or a non-TLS DRI driver, but a TLS DRI driver requires a TLS enabled libGL. This fixes bug #1822.
2004-12-08silence warningAlan Hourihane
2004-11-27Use new _glapi_proc typedef instead of void * for function pointers.Brian Paul
Misc clean-ups in glapi.c
2004-09-10More updates for Doxygen.Brian Paul
2003-06-05Removed all RCS / CVS tags (Id, Header, Date, etc.) from everything.Ian Romanick
2002-06-29Applied Matt Sealey's patch to remove/isolate all stdio.h function calls.Brian Paul
Instead of mstdio.[ch], use imports.[ch] to isolate these functions.
2001-03-28New mechanism for thread-safe GL API dispatch. C-based dispatch is faster.Brian Paul
Folded glapinoop.c code into glapi.c. Added code to glapitemp.h to fill in dispatch tables. Updated Makefiles.
2001-01-23added dispatch override mechanism, used by trace extensionBrian Paul
2000-09-26Replaced preprocessor symbol GL_MESA_TRACE with MESA_TRACE.Brian Paul
Changed src/Makefile.X11 to compile Trace sources like other drivers.
2000-09-15added GL_MESA_trace supportBrian Paul
2000-09-05added tracing facility from LokiBrian Paul
2000-01-28renamed _glapi_CurrentContext to _glapi_ContextBrian Paul
2000-01-17added _glapi_DispatchBrian Paul
2000-01-05removed _glapi_ThreadSafeBrian Paul
1999-12-17added current context functions, made ThreadSafe publicBrian Paul
1999-12-16minor clean-upBrian Paul
1999-12-16thread support now worksBrian Paul
1999-12-16minor changeBrian Paul
1999-12-15added _glapi_get_proc_name()Brian Paul
1999-12-15new thread codeBrian Paul
1999-12-15added many more extension entry pointsBrian Paul
1999-11-27lots of work on extension managementBrian Paul
1999-11-25include glapitable.hBrian Paul
1999-11-12replaced _GLAPI_EXT_color_table with _GLAPI_EXT_paletted_textureBrian Paul
1999-11-11first big check-in of new Mesa 3.3 codeBrian Paul