Commit graph

12342 commits

Author SHA1 Message Date
Kristian Høgsberg
20b9230ce1 Move DRI drawable creation into dri_glx.c. 2008-03-08 21:02:23 -05:00
Kristian Høgsberg
92d2a78f8d Introduce __GLXDRIscreen so we can start moving function pointers in there.
Temporarily rename the __DRIscreen member to __driScreen.  Eventually,
we'll move that into __GLXDRIscreen and only access it in dri_glx.c.
2008-03-08 20:34:24 -05:00
Kristian Høgsberg
53dc863636 Move DRI specific parts of CreateContext into dri_glx.c. 2008-03-08 20:02:22 -05:00
Kristian Høgsberg
a1ea6f6198 Convert driCreateScreen and driDestroyScreen to function pointers.
We avoid leaking the symbols and will be able to replace them with
DRI2 implementation later on.
2008-03-08 19:15:50 -05:00
Kristian Høgsberg
425f9ed44e Abstract __DRIdisplayPrivateRec away in dri_glx.c.
This patch moves __DRIdisplayPrivateRec definition into dri_glx.c and
let's dri_glx.c allocate the __DRIdisplay struct pointer to from
__GLXdisplayPrivate.

A small step towards moving more of the dri functionality into dri_glx.c.
2008-03-08 19:10:21 -05:00
Kristian Høgsberg
f585cb29b8 Make __glXCloseDisplay static instead of prototyping it to avoid warning. 2008-03-08 17:38:02 -05:00
Kristian Høgsberg
47d563006d Move libGL install target to the libGL Makefile. 2008-03-08 17:19:39 -05:00
Kristian Høgsberg
6fd82f6fbd Simplify LIBGL_DRIVERS_PATH walking. 2008-03-08 16:19:39 -05:00
Kristian Høgsberg
0f2723cacb Simplify dri loading code by eliminating dlopen "cache".
No need to jump through hoops to track __DRIdrivers and avoid dlopening the
same .so more than twice, dlopen() does this internally.  Besides, we
were already bypassing this and dlopening drivers for each screen,
whether or not they were already dlopened.
2008-03-08 16:19:39 -05:00
Kristian Høgsberg
890d44e54f libGL: Consolidate DRI initialization in dri_glx.c
Move a lot of code over from glx_ext.c.
2008-03-08 16:19:39 -05:00
Dan Nicholson
db7fc63110 autoconf: Print GCC include path directly and be more robust using it
Rather than constructing the GCC include path from `-print-search-dirs',
we can get the path directly from `-print-file-name=include'. This is
used in the Linux kernel build, for example. If no output is returned
from the command, then we don't append a -I path the the makedepend
options.
2008-03-07 11:48:09 -08:00
Kristian Høgsberg
1e6943cf55 [intel] Only enable GL_EXT_texture_sRGB on i965.
Fixes #14799.
2008-03-07 13:46:05 -05:00
Zou Nan hai
7676980d38 [i965] fix fd.o bug #11471 and #11478
1. Follow EXT_texture_rectangle with YCbCr texture
	2. swap UV component for MESA_FORMAT_YCBCR
2008-03-07 15:11:28 +08:00
Xiang, Haihao
5982d39799 i965: use RGB565 to render a bitmap if Depth is 16 2008-03-07 09:48:11 +08:00
Xiang, Haihao
d76545de57 i965: Fix double free issue to pass glean/maskedClear test 2008-03-06 13:23:27 +08:00
Xiang, Haihao
771ba66629 i965:fix segfault issue when clearing the window which
is created with mode GLUT_SINGLE|GLUT_RGB|GLUT_DEPTH.
This issue is introduced by 20b8bff49c
2008-03-06 09:45:51 +08:00
Eric Anholt
fe91c05b54 [intel] Add a driconf option to cache freed buffer objects for reuse.
This is defaulted off as it has potentially large memory costs for a modest
performance gain.  Ideally we will improve DRM performance to the point where
this optimization is not worth the memory cost in any case, or find some
middle ground in caching only limited numbers of certain buffers.  For now,
this provides a modest 4% improvement in openarena on GM965 and 10% in openarena
on GM945.
2008-03-05 16:29:14 -08:00
Christoph Brill
fc21e9cdd0 r300: replace some hard coded mask by define in stencil area 2008-03-04 21:52:49 +01:00
Christoph Brill
701ccf6f29 r300: Fix some issues with masks in stencil buffer area 2008-03-04 21:37:56 +01:00
Kristian Høgsberg
3d608c7a2d [dri2] Add tail pointer to reemitDrawableInfo callback.
When the DRI doesn't parse the event buffer for a while, the X server
may overwrite data that the driver didn't get a chance to look at.  The
reemitDrawableInfo callback requests that the X server reemit all info
for the specified drawable.  To make use of this, the drive needs to know
the new tail pointer so it know where to start reading from.
2008-03-03 19:16:20 -05:00
Kristian Høgsberg
4f7a75cc8a [dri2] Optimize event parsing to skip obsolete events.
This also fixes the problem where the X server does multiple resizes before
the DRI driver gets the events.  The obsolete buffer attach events then
reference already destroyed buffer objects.
2008-03-03 19:16:20 -05:00
Kristian Høgsberg
36c26d321b [intel] Silence unused variable warning when compiling for i965. 2008-03-03 19:15:52 -05:00
Patrice Mandin
f59d59a95f nouveau: compilation fixes 2008-03-02 12:16:23 +01:00
Oliver McFadden
47f08a9fb5 r300: Corrected a bug with the SUB instruction. 2008-03-02 09:34:43 +00:00
Oliver McFadden
e239871d5b r300: Corrected a bug with the MAD instruction.
The PVS_VECTOR_OPCODE macro should be modified to support macro instructions,
too.
2008-03-02 06:35:44 +00:00
Oliver McFadden
c30cc5904d r300: Added the PVS_SRC_OPERAND documentation from AMD. 2008-03-01 06:33:07 +00:00
Oliver McFadden
3129d8b512 r300: Added the PVS_OP_DST_OPERAND documentation from AMD. 2008-03-01 06:33:07 +00:00
Oliver McFadden
9a3d4b14e9 r300: Added a TODO comment for registers missing from AMD's documentation. 2008-03-01 06:33:07 +00:00
Oliver McFadden
916a53088e r300: Moved the vertex program shift/mask defines into the appropriate file. 2008-03-01 06:33:07 +00:00
Oliver McFadden
038e13b1ee r300: Indented the vertex program code with longer lines. 2008-03-01 06:33:07 +00:00
Oliver McFadden
5dcbdc09f3 r300: Moved the PREFER_DP4 define near the position invariant function. 2008-03-01 06:33:07 +00:00
Oliver McFadden
bbab0f97b8 r300: Added a TODO comment for the MAD opcodes. 2008-03-01 06:33:07 +00:00
Oliver McFadden
2a8b6c62a7 r300: Use the VE_ADD hardware opcode for the SUB opcode. 2008-03-01 06:33:07 +00:00
Oliver McFadden
a6d772ed16 r300: Use the VE_MULTIPLY hardware opcode for the MUL opcode. 2008-03-01 06:33:07 +00:00
Oliver McFadden
f80223d9ff r300: Cleaned up the XPD opcode temporary register usage. 2008-03-01 06:33:06 +00:00
Oliver McFadden
b795e8db5f r300: Cleaned up extra white space. 2008-03-01 06:33:06 +00:00
Oliver McFadden
dda906fcdb r300: Prefer to use the VE_ADD for simple MOV style opcodes.
The VE_MULTIPLY_ADD has further restrictions on reading temporary memory which
may complicate things. See AMD's documentation.
2008-03-01 06:33:06 +00:00
Oliver McFadden
7504981074 r300: Removed the (undocumented) MAD_2 opcode.
This opcode is likely a mistake from reverse engineering. MAD_2 isn't included
in AMD's documentation, and my testing reviles there is no problem using the
documented MAD opcode.
2008-03-01 06:33:06 +00:00
Oliver McFadden
7e1878cdad r300: Cleaned up the MAD/MAD_2 opcode selection. 2008-03-01 06:33:06 +00:00
Oliver McFadden
bb4188b85b r300: Renamed some misleading macro arguments. 2008-03-01 06:33:06 +00:00
Oliver McFadden
fb0947ed33 r300: Cleaned up the vertex program macros. 2008-03-01 06:33:06 +00:00
Oliver McFadden
e3a0a8dc7d r300: Removed duplicate component selection defines. 2008-03-01 06:33:06 +00:00
Oliver McFadden
2fdd6d87f4 r300: Removed duplicate source register class defines. 2008-03-01 06:33:06 +00:00
Oliver McFadden
95604e88e7 r300: Renamed the vertex program source register macro. 2008-03-01 06:33:06 +00:00
Oliver McFadden
9c74291197 r300: Removed the (obsolete) special source register macros. 2008-03-01 06:33:06 +00:00
Oliver McFadden
440a6fbf6e r300: Cleaned up the special vertex program source register macros. 2008-03-01 06:33:06 +00:00
Oliver McFadden
8c4d811295 r300: Added the vertex program swizzle (aka selection) defines. 2008-03-01 06:33:06 +00:00
Oliver McFadden
b2c02a4a7c r300: Converted to the new src/dest register defines. 2008-03-01 06:33:06 +00:00
Oliver McFadden
b0e81fd19e r300: Removed an obsolete comment from the vertex program header file. 2008-03-01 06:33:06 +00:00
Oliver McFadden
41c3ae5778 r300: Converted to the new Math Engine defines. 2008-03-01 06:33:06 +00:00