Keith Whitwell wrote:
> 
> libGL.so provides a dispatch table that can be efficiently switched.  The
real 
> 'gl' entrypoints basically just look up an offset in this table and jump
to 
> it.  No new arguments, no new stack frame, nada -- just an extremely
efficient 
> jump.  Note that this is the library entrypoint, so we can't ask the
caller to 
> use a function pointer instead:
> 
> 00041930 <glBlendFunc>:
>     41930:       a1 00 00 00 00          mov    0x0,%eax
>     41935:       ff a0 c4 03 00 00       jmp    *0x3c4(%eax)
> 
> unfortunately, that version isn't threadsafe, but Gareth is relentlessly 
> persuing an efficient threadsafe equivalent.

That's certainly one way to put it ;-)  I'll probably send you and Brian an
email about this pretty soon, I'd imagine.  Things are looking good.

-- Gareth


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to