Commit Graph

21524 Commits

Author SHA1 Message Date
Brian Paul 9705cff203 mesa: re-org texgen state
New gl_texgen struct allows quite a bit of code reduction.
2009-02-21 13:23:04 -07:00
Kristian Høgsberg 5b354d39d4 intel: Fix intelSetTexBuffer miptree leak.
The intelImage also holds a reference to the miptree, so unref that as well.
2009-02-21 14:12:53 -05:00
Eric Anholt 40dd024be6 intel: tell libdrm whether we want a cpu-ready or gpu-ready BO for regions.
This lets us avoid allocing new buffers for renderbuffers, finalized miptrees,
and PBO-uploaded textures when there's an unreferenced but still active one
cached, while also avoiding CPU waits for batchbuffers and CPU-uploaded
textures.  The size of BOs allocated for a desktop running current GL
cairogears on i915 is cut in half with this.

Note that this means we require libdrm 2.4.5.
2009-02-21 10:53:41 -08:00
Eric Anholt 078e8a61b2 i965: Fix render target read domains.
We were asking for something illegal (write_domain != 0 && read_domains !=
write_domain) because at the time of writing the region surfaces were used
for texturing occasionally as well, and we weren't really clear on the model
GEM was going to use.

This reliably triggered a kernel bug with domain handling, resulting in
oglconform mustpass.c failure.  Of course, it only became visible after
01bc4d441f cleaned up some gratuitous flushing.
2009-02-21 10:53:05 -08:00
Brian Paul 776971218e gallium: use the TGSI_TEXTURE_SHADOW1D/2D/RECT texture types for TEX instructions
These texture types were defined but never put to use.
For the time being though, the Mesa->TGSI translater isn't emitting these
targets.  See the XXX comment in map_texture_target().
2009-02-20 14:06:25 -07:00
Brian Paul e0d9073081 i965: use the new prog_instruction::TexShadow field
GLSL shadow() sampler calls are properly propogated down to the driver now.
The glean glsl1 shadow() tests work (except for the alpha channel).
2009-02-20 13:50:27 -07:00
Brian Paul 773e9d4765 i965: check depth_mode in translate_tex_format() for MESA_FORMAT_S8_Z24
Note that I24X8 vs. A24X8 vs. L24X8 doesn't seem to make any difference
for texture/shadow compare, however.
2009-02-20 13:48:44 -07:00
Brian Paul 0ea95ae742 glsl: use new IR opcodes for TEX instructions with shadow comparison
Such TEX instructions will have the TexShadow flag set.
The gl_program::ShadowSamplers field is now set in the linker.  We missed
that before.
2009-02-20 13:44:43 -07:00
Brian Paul 44e018c09e mesa: add TexShadow field to prog_instruction
If the instruction is TEX/TXP/TXL/etc the TexShadow field will be true if
the instruction is a texture fetch with shadow compare.
2009-02-20 13:42:08 -07:00
Brian Paul a79186e29e i965: separate emit_op() and emit_tex_op() functions 2009-02-20 12:23:25 -07:00
Brian Paul e3cc8e8244 mesa: freshen-up comments, move some fields in prog_instruction 2009-02-20 11:44:38 -07:00
Brian Paul 55d33e1fa7 i965: update comment, use const qualifier 2009-02-20 11:44:38 -07:00
Brian Paul f5674b566e i965: var renaming, clean-up 2009-02-20 11:44:38 -07:00
Brian Paul fc320d4641 i965: added comment 2009-02-20 11:44:38 -07:00
Brian Paul da2b661ee4 intel: fix datatype typo, s/GLboolean/GLuint/
Fixes mysterious failures in glean glsl1 test.
2009-02-20 11:44:38 -07:00
Brian Paul d8de0a2f3a i965: additional debug output 2009-02-20 11:44:38 -07:00
Brian Paul c0b59420ee glsl: rename GLSL texture assembly instructions to be more legible 2009-02-20 11:44:17 -07:00
Brian Paul ad2cfa4199 glsl: fix vec4_texp_rect IR code (need projective version) 2009-02-20 11:42:28 -07:00
José Fonseca 60e35ebf14 python: More efficient blits from surfaces.
C code instead of interpreted python code.
2009-02-20 16:50:02 +00:00
José Fonseca 7738855988 util: Use a checkboard pattern instead of asserting for unknown formats.
Useful to replay traces which use DXTC textures...
2009-02-20 16:48:45 +00:00
José Fonseca 059d7f3103 python/interpreter: Don't do unnecessary updates. 2009-02-20 15:23:33 +00:00
José Fonseca e92f3310fa python/retrace: Verbosity level. 2009-02-20 15:14:15 +00:00
José Fonseca 204526a6d2 python/retrace: Cope with python 2.4.x 2009-02-20 15:02:19 +00:00
Keith Whitwell 02ab1eaed7 util/debug: need to fflush(stderr) on windows
Hard to believe... but true.
2009-02-20 14:27:23 +00:00
José Fonseca 5b41e30f26 util: Also output messages to stderr on windows.
When there is a console attached, and no debugger attached.
2009-02-20 14:14:19 +00:00
José Fonseca 7887a3e42b python: Pass a zero offset to util_draw_vertex_buffer. 2009-02-20 13:00:13 +00:00
José Fonseca a5c2570dc5 wgl: Prevent null pointer reference. 2009-02-20 11:54:18 +00:00
José Fonseca ee4e4a6b96 util: Stack backtracing facilities.
Not much useful until we have symbol lookup.
2009-02-20 11:54:18 +00:00
Jakob Bornecrantz d67bd60ecf gallium: s/GALLIUM_DRIVER_DIRS/GALLIUM_DRIVERS_DIRS/ 2009-02-20 11:25:55 +00:00
Jakob Bornecrantz fffadc219f gallium: Improve recursive makefiles 2009-02-20 11:25:55 +00:00
Jakob Bornecrantz 3eebd24cb6 gallium: Improve winsys dri template Makefile
LIBNAME_EGL had to be removed since if you didn't
	set it (nobody set it anyways) make would get it
	confused it with the $(TOP)/lib/gallium target.
2009-02-20 11:23:32 +00:00
Jakob Bornecrantz 5089e5c052 intel: Use new makefile template for drm gem 2009-02-20 10:22:11 +00:00
Jakob Bornecrantz 2734b8079d nouveau: Use new makefile template for drm common 2009-02-20 10:22:11 +00:00
Jakob Bornecrantz d9602e5144 gallium: Improve makefiles for libraries
The template makefile that most libraries in
	gallium included was based on dri and had a bunch
	unrelevant junk in it.

	Update it and improve the depending makefiles.
2009-02-20 10:22:10 +00:00
Ben Skeggs 8cf997b7c8 nouveau: reenable all the non-nv50 pipe drivers
They still won't build yet, but anyway..
2009-02-20 09:47:56 +10:00
Ben Skeggs b85c81760c nv50: remove unused variable 2009-02-20 09:43:25 +10:00
Ben Skeggs 5ea8068f24 nv50: fix occlusion queries
Left behind from some gallium changes a while back..
2009-02-20 09:43:24 +10:00
Ben Skeggs 63a3a3762c nv50: rework for texture_transfer changes 2009-02-20 09:43:24 +10:00
Jakob Bornecrantz 9c9fcc83c0 gallium: Renable pipe drivers disabled during vbuf changes
i965simple is not enabled because it is still broken.
2009-02-19 23:16:57 +01:00
Jakob Bornecrantz 4e37f10806 trival: Make the last of progs show the name 2009-02-19 22:50:18 +01:00
Brian Paul 2b32c7dff5 mesa: support GL_EXT_stencil_two_side in gallium/mesa state tracker
Since Ian's patch of a few weeks ago, we can enable all three variations
of two-sided stencil.  Update the state tracker to handle the extra back-
face state and turn on the EXT.

Note: there's a new Glean test for two-sided stencil now...
2009-02-19 14:45:27 -07:00
Brian Paul a304cc6cca mesa: fix/update/restore comments related to two-sided stencil 2009-02-19 14:45:27 -07:00
Brian Paul 2a968113a9 mesa: initialize ctx->Stencil._BackFace = 1
Back-face stencil operations didn't work correctly because this value was
zero.  It needs to be 1 or 2.  The only place it's set otherwise is in
glEnable/Disable(GL_STENCIL_TEST_TWO_SIDE_EXT).
2009-02-19 14:45:26 -07:00
José Fonseca 43b31fc6fc util: Support PIPE_FORMAT_Z32_FLOAT in pipe_tile_raw_to_rgba 2009-02-19 12:56:56 +00:00
José Fonseca 7c12e1aa53 pipebuffer: Dump debugging info for fenced buffer list. 2009-02-18 15:12:16 +00:00
José Fonseca 46728037a0 scons: Produce map files for debug builds too. 2009-02-18 15:05:23 +00:00
José Fonseca c7431552c0 pipebuffer: Don't retry to alloc memory block on mm.
It will give the same result 2nd time too, as fencing is done at a
higher level.
2009-02-18 10:25:04 +00:00
Keith Whitwell 8ef377d76b draw: Reuse xmm registers. 2009-02-17 21:45:54 +00:00
Jakob Bornecrantz 480bb4c217 draw: Fix segfault if rast is null 2009-02-14 17:49:46 +01:00
Michel Dänzer 0794f1d6df gallium/winsys/xlib: Fix build with USE_XSHM undefined. 2009-02-19 19:52:59 +01:00