[Mesa-dev] glapi dispatch table isn't built correctly with --shared-glapi

Matt Turner mattst88 at gmail.com
Wed Feb 1 07:59:02 PST 2012


On Wed, Feb 1, 2012 at 9:41 AM, Jon TURNEY <jon.turney at dronecode.org.uk> wrote:
>
> This is with git master, but the same issue exists since at least mesa-7.11.2.
>
> ./configure --enable-shared-glapi --disable-driglx-direct --with-driver=dri
> --with-dri-drivers=swrast --with-gallium-drivers=swrast
>
> $ gdb --args ./glean -r foo -o -t vertProg1 --quick
> ...
> (gdb) b __indirect_glProgramParameters4fvNV
> Function "__indirect_glProgramParameters4fvNV" not defined.
> Make breakpoint pending on future shared library load? (y or [n]) y
> Breakpoint 1 (__indirect_glProgramParameters4fvNV) pending.
> (gdb) r
> Starting program: /opt/jhbuild/git/glean/bin/glean -r foo -o -t vertProg1 --quick
> Breakpoint 1, __indirect_glProgramParameters4fvNV (target=1, index=135353784,
> num=20, params=0xbffff11c) at indirect.c:9306
> 9306        struct glx_context *const gc = __glXGetCurrentContext();
> (gdb) bt
> #0  __indirect_glProgramParameters4fvNV (target=1, index=135353784, num=20,
> params=0xbffff11c) at indirect.c:9306
> #1  0x080b719b in GLEAN::VertexProgramTest::setup (this=0x8115520) at
> tvertprog1.cpp:831
> #2  0x080b82e3 in GLEAN::VertexProgramTest::runOne (this=0x8115520, r=...,
> w=...) at tvertprog1.cpp:1112
> #3  0x08059885 in GLEAN::BaseTest<GLEAN::MultiTestResult>::run
> (this=0x8115520, environment=...) at tbase.h:317
> #4  0x08053ec0 in main (argc=7, argv=0xbffff3d4) at main.cpp:140
> (gdb) frame 1
> #1  0x080b719b in GLEAN::VertexProgramTest::setup (this=0x8115520) at
> tvertprog1.cpp:831
> 831             glGenProgramsARB_func(1, &progID);
>
> Note that glean is calling glGenPrograms, but we are ending up in
> glProgramParameters4fvNV.
>
> It seems the indirect dispatch table isn't being built correctly.  The
> dispatch table layouts in glapi_map_tmpi.h and glapitable.h are inconsistent
> when buiding shared glapi, as shared-glapi/glapi_mapi_tmp.h is generated from
> gl_and_es_API.xml, whereas glapitable.h is generated from gl_API.xml

Do you think this is related to
http://www.mail-archive.com/mesa-dev@lists.freedesktop.org/msg17627.html
?

Thanks,
Matt


More information about the mesa-dev mailing list