glx: Don't rely on struct _glapi_table
authorIan Romanick <ian.d.romanick@intel.com>
Tue, 31 Jul 2012 23:40:07 +0000 (16:40 -0700)
committerIan Romanick <ian.d.romanick@intel.com>
Wed, 8 Aug 2012 17:06:26 +0000 (10:06 -0700)
commitf5dffb7e36487ff8a012725aaf78a4b7d3169102
treeb22888dbf6944e21cd974aaf3537e3521810adbe
parent52d6df8aa7231c1d4d80a8599af0e2c5d02c7b6c
glx: Don't rely on struct _glapi_table

When --enable-shared-glapi is used, all non-ABI entries in the table are
lies.  There are two completely separate code generation paths used to
assign dispatch offset.  Neither has any clue about the other.
Unsurprisingly, the can't agree on what offsets to assign.

This adds a bunch of overhead to __glXNewIndirectAPI, but this function
is called at most once.

The test ExtensionNopDispatch was removed.  There was just no way to
make this test work with the information provided in shared-glapi.
Since indirect_glx.c uses _glapi_get_proc_offset now, it was also
impossible to make the tests work without shared-glapi.  So much pain.

This fixes indirect rendering with shared-glapi.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
src/glx/tests/Makefile.am
src/glx/tests/indirect_api.cpp
src/mapi/glapi/gen/glX_proto_send.py