Keith Whitwell [Tue, 24 Feb 2009 11:58:58 +0000 (11:58 +0000)]
mesa/st: support l8 as well as i8 in bitmap code
Also don't send the partial program fragment down to hardware -- the
program will never be used in that form.
José Fonseca [Tue, 24 Feb 2009 11:30:25 +0000 (11:30 +0000)]
gallium: Add pipe_buffer_write/read inlines.
Saves code, and will simplify future interface changes.
José Fonseca [Tue, 24 Feb 2009 11:29:33 +0000 (11:29 +0000)]
mesa: List new source file in SConscript.
José Fonseca [Tue, 24 Feb 2009 11:22:24 +0000 (11:22 +0000)]
pipebuffer: Remove unused var.
Brian Paul [Tue, 24 Feb 2009 00:43:43 +0000 (17:43 -0700)]
glsl: yet another swizzled expression fix
This fixes swizzled conditional expressions such "(b ? p : q).x"
Brian Paul [Mon, 23 Feb 2009 22:07:31 +0000 (15:07 -0700)]
gallium: include st_cb_viewport.h to silence warning
Brian Paul [Mon, 23 Feb 2009 22:07:11 +0000 (15:07 -0700)]
gallium: fix build breakage in st_cb_viewport.c
Brian Paul [Mon, 23 Feb 2009 20:10:55 +0000 (13:10 -0700)]
glsl: fix another swizzle-related bug
This fixes the case of "infinitely" nested swizzles such as EXPR.wzyx.yxwz.xxyz
This doesn't appear in typical shaders but with function inlining and the
compiler's internal use of swizzles it can happen.
New glean glsl1 test case added for this.
Alan Hourihane [Fri, 20 Feb 2009 14:40:08 +0000 (14:40 +0000)]
mesa: only call update_buffer when it's available
Alan Hourihane [Thu, 19 Feb 2009 18:33:15 +0000 (18:33 +0000)]
gallium: add winsys interface for viewport changes to support DRI2
Alan Hourihane [Thu, 19 Feb 2009 18:39:08 +0000 (18:39 +0000)]
glx: add support for a reallyFlush() function before swap occurs.
Brian Paul [Mon, 23 Feb 2009 20:02:56 +0000 (13:02 -0700)]
mesa: include compiler.h, fixes cell build, remove Haiku special case
Robert Ellison [Sat, 21 Feb 2009 00:04:15 +0000 (17:04 -0700)]
i965: fix line stipple fallback for GL_LINE_STRIP primitives
When doing line stipple, the stipple count resets on each line segment,
unless the primitive is a GL_LINE_LOOP or a GL_LINE_STRIP.
The existing code correctly identifies the need for a software fallback
to handle conformant line stipple on GL_LINE_LOOP primitives, but
neglects to make the same assessment on GL_LINE_STRIP primitives.
This fixes it so they match.
José Fonseca [Mon, 23 Feb 2009 17:21:36 +0000 (17:21 +0000)]
Merge commit 'origin/gallium-0.1'
Conflicts:
src/gallium/auxiliary/pipebuffer/pb_bufmgr_mm.c
src/gallium/auxiliary/util/u_tile.c
Tom Fogal [Mon, 23 Feb 2009 15:20:38 +0000 (08:20 -0700)]
mesa: fix _glxapi_get_proc_address() for mangled names
Joel Bosveld [Mon, 23 Feb 2009 15:19:14 +0000 (08:19 -0700)]
gallium: Install winsys/drm to DESTDIR rather than /
Tomas Wilhelmsson [Mon, 23 Feb 2009 15:11:29 +0000 (08:11 -0700)]
mesa: fixes for building on Haiku
Corbin Simpson [Mon, 23 Feb 2009 13:04:17 +0000 (05:04 -0800)]
r300-gallium: Fix pasto and debug messages.
This could explain at least one kind of lockup. Yay?
Corbin Simpson [Mon, 23 Feb 2009 12:48:42 +0000 (04:48 -0800)]
r300-gallium: Cleanup some state emit, move vertex format state to r300_emit.
No need to explicitly update derived state, as it will be done automatically.
José Fonseca [Mon, 23 Feb 2009 12:53:09 +0000 (12:53 +0000)]
gallium: Define PIPE_PRIM_MAX.
Corbin Simpson [Mon, 23 Feb 2009 12:36:41 +0000 (04:36 -0800)]
r300-gallium: Fix a handful of compile warnings.
Some harmless, some very dangerous.
Corbin Simpson [Mon, 23 Feb 2009 12:25:29 +0000 (04:25 -0800)]
r300-gallium: Decode passthrough shader for r300.
Looks pretty sane.
Corbin Simpson [Mon, 23 Feb 2009 11:18:02 +0000 (03:18 -0800)]
r300-gallium: Finish VAP/VF setup.
Messy, messy.
Corbin Simpson [Mon, 23 Feb 2009 11:16:46 +0000 (03:16 -0800)]
r300-gallium: Fix BEGIN_CS size.
José Fonseca [Mon, 23 Feb 2009 11:52:59 +0000 (11:52 +0000)]
wgl: Enable the use of Win32 threads.
José Fonseca [Mon, 23 Feb 2009 11:24:46 +0000 (11:24 +0000)]
mesa: Fix windows build.
Joakim Sindholt [Sat, 21 Feb 2009 16:40:48 +0000 (17:40 +0100)]
r300-gallium: Add pipe_format translators and apply them
Joakim Sindholt [Sat, 21 Feb 2009 16:27:12 +0000 (17:27 +0100)]
r300-gallium: Add all supported 2d texture formats
Joakim Sindholt [Fri, 20 Feb 2009 02:53:20 +0000 (03:53 +0100)]
r300-gallium: correct buffer stride calculation
Brian Paul [Sun, 22 Feb 2009 23:29:30 +0000 (16:29 -0700)]
mesa: remove unneeded #include
Brian Paul [Sun, 22 Feb 2009 23:19:29 +0000 (16:19 -0700)]
mesa: #include, misc clean-ups
Brian Paul [Sun, 22 Feb 2009 23:18:38 +0000 (16:18 -0700)]
mesa: remove unneeded #includes
Brian Paul [Sun, 22 Feb 2009 22:43:29 +0000 (15:43 -0700)]
mesa: move a bunch of compiler-related stuff into new compiler.h header
This trims down and cleans up imports.h and glheader.h quite a bit.
Brian Paul [Sun, 22 Feb 2009 21:27:21 +0000 (14:27 -0700)]
mesa: remove unused ENABLE_TEXGENx, ENABLE_TEXMATx flags
Brian Paul [Sun, 22 Feb 2009 21:26:44 +0000 (14:26 -0700)]
mesa: assorted clean-ups, var renaming, etc.
Brian Paul [Sun, 22 Feb 2009 21:20:16 +0000 (14:20 -0700)]
mesa: simplify texture combine state copying in _mesa_copy_texture_state()
Just copy the whole struct.
Brian Paul [Sun, 22 Feb 2009 21:15:58 +0000 (14:15 -0700)]
mesa: remove redundant assertions (same asserts in context.c)
Brian Paul [Sun, 22 Feb 2009 22:37:57 +0000 (15:37 -0700)]
gallium: remove dependency on main/glheader.h in glxapi.c
Only needed it for the PUBLIC macro.
Ben Skeggs [Sun, 22 Feb 2009 05:38:59 +0000 (15:38 +1000)]
nv50: delay uploads until transfer object is destroyed
It's possible a state tracker will map/unmap a transfer object many times.
Delaying upload until the object is destroyed will prevent unnecessary
uploads to the GPU.
Also fixing a typo here, was unmapping the wrong buffer on transfer_unmap!
Dave Airlie [Sun, 22 Feb 2009 00:37:54 +0000 (10:37 +1000)]
texmem: fix typo from brianp's changes.
Reported by cjb via tinderbox on irc
Brian Paul [Sat, 21 Feb 2009 23:07:52 +0000 (16:07 -0700)]
glapi: update find_entry() for mangled names
Tom Fogal [Sat, 21 Feb 2009 23:07:04 +0000 (16:07 -0700)]
mesa: added extern qualifier
Brian Paul [Sat, 21 Feb 2009 23:01:54 +0000 (16:01 -0700)]
mesa: regenerated gl_mange.h file
Brian Paul [Sat, 21 Feb 2009 22:15:20 +0000 (15:15 -0700)]
mesa: use enums for TEXTURE_x_INDEX values
Plus, put them in the order of highest to lowest priority to simplify
the texture_override() loop.
Brian Paul [Sat, 21 Feb 2009 21:53:25 +0000 (14:53 -0700)]
mesa: use an array for current texture objects
Use loops to consolidate lots of texture object code.
Brian Paul [Sat, 21 Feb 2009 20:59:29 +0000 (13:59 -0700)]
mesa: use an array for default texture objects
Replace Default1D/2D/3D/Cube/etc with DefaultTex[TEXTURE_x_INDEX].
The same should be done with the Current1D/2D/3D/etc pointers...
Brian Paul [Sat, 21 Feb 2009 20:23:04 +0000 (13:23 -0700)]
mesa: re-org texgen state
New gl_texgen struct allows quite a bit of code reduction.
Kristian Høgsberg [Fri, 13 Feb 2009 16:05:54 +0000 (11:05 -0500)]
intel: Fix intelSetTexBuffer miptree leak.
The intelImage also holds a reference to the miptree, so unref that as well.
Eric Anholt [Wed, 18 Feb 2009 19:34:47 +0000 (11:34 -0800)]
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.
Eric Anholt [Thu, 19 Feb 2009 21:53:46 +0000 (13:53 -0800)]
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
01bc4d441fd6821ad9fc20d5e9544e4e587e4ff0 cleaned up some gratuitous flushing.
Brian Paul [Fri, 20 Feb 2009 21:06:25 +0000 (14:06 -0700)]
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().
Brian Paul [Fri, 20 Feb 2009 20:50:27 +0000 (13:50 -0700)]
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).
Brian Paul [Fri, 20 Feb 2009 20:48:44 +0000 (13:48 -0700)]
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.
Brian Paul [Fri, 20 Feb 2009 20:44:43 +0000 (13:44 -0700)]
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.
Brian Paul [Fri, 20 Feb 2009 20:42:08 +0000 (13:42 -0700)]
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.
Brian Paul [Fri, 20 Feb 2009 19:23:25 +0000 (12:23 -0700)]
i965: separate emit_op() and emit_tex_op() functions
Brian Paul [Fri, 20 Feb 2009 18:24:15 +0000 (11:24 -0700)]
mesa: freshen-up comments, move some fields in prog_instruction
Brian Paul [Fri, 20 Feb 2009 17:49:30 +0000 (10:49 -0700)]
i965: update comment, use const qualifier
Brian Paul [Fri, 20 Feb 2009 17:48:52 +0000 (10:48 -0700)]
i965: var renaming, clean-up
Brian Paul [Fri, 20 Feb 2009 17:48:20 +0000 (10:48 -0700)]
i965: added comment
Brian Paul [Fri, 20 Feb 2009 17:47:28 +0000 (10:47 -0700)]
intel: fix datatype typo, s/GLboolean/GLuint/
Fixes mysterious failures in glean glsl1 test.
Brian Paul [Fri, 20 Feb 2009 15:31:02 +0000 (08:31 -0700)]
i965: additional debug output
Brian Paul [Fri, 20 Feb 2009 18:44:17 +0000 (11:44 -0700)]
glsl: rename GLSL texture assembly instructions to be more legible
Brian Paul [Fri, 20 Feb 2009 18:42:28 +0000 (11:42 -0700)]
glsl: fix vec4_texp_rect IR code (need projective version)
José Fonseca [Fri, 20 Feb 2009 16:50:02 +0000 (16:50 +0000)]
python: More efficient blits from surfaces.
C code instead of interpreted python code.
José Fonseca [Fri, 20 Feb 2009 16:48:45 +0000 (16:48 +0000)]
util: Use a checkboard pattern instead of asserting for unknown formats.
Useful to replay traces which use DXTC textures...
José Fonseca [Fri, 20 Feb 2009 15:23:33 +0000 (15:23 +0000)]
python/interpreter: Don't do unnecessary updates.
José Fonseca [Fri, 20 Feb 2009 15:14:15 +0000 (15:14 +0000)]
python/retrace: Verbosity level.
José Fonseca [Fri, 20 Feb 2009 15:02:19 +0000 (15:02 +0000)]
python/retrace: Cope with python 2.4.x
Keith Whitwell [Fri, 20 Feb 2009 14:27:23 +0000 (14:27 +0000)]
util/debug: need to fflush(stderr) on windows
Hard to believe... but true.
José Fonseca [Fri, 20 Feb 2009 14:14:19 +0000 (14:14 +0000)]
util: Also output messages to stderr on windows.
When there is a console attached, and no debugger attached.
José Fonseca [Wed, 31 Dec 2008 15:03:35 +0000 (15:03 +0000)]
python: Pass a zero offset to util_draw_vertex_buffer.
José Fonseca [Fri, 20 Feb 2009 11:35:46 +0000 (11:35 +0000)]
wgl: Prevent null pointer reference.
José Fonseca [Fri, 20 Feb 2009 11:35:23 +0000 (11:35 +0000)]
util: Stack backtracing facilities.
Not much useful until we have symbol lookup.
Jakob Bornecrantz [Fri, 20 Feb 2009 11:03:18 +0000 (11:03 +0000)]
gallium: s/GALLIUM_DRIVER_DIRS/GALLIUM_DRIVERS_DIRS/
Jakob Bornecrantz [Thu, 19 Feb 2009 23:50:26 +0000 (00:50 +0100)]
gallium: Improve recursive makefiles
Jakob Bornecrantz [Thu, 19 Feb 2009 23:47:46 +0000 (00:47 +0100)]
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.
Jakob Bornecrantz [Thu, 19 Feb 2009 23:23:29 +0000 (00:23 +0100)]
intel: Use new makefile template for drm gem
Jakob Bornecrantz [Thu, 19 Feb 2009 23:22:07 +0000 (00:22 +0100)]
nouveau: Use new makefile template for drm common
Jakob Bornecrantz [Thu, 19 Feb 2009 23:14:00 +0000 (00:14 +0100)]
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.
Ben Skeggs [Thu, 19 Feb 2009 23:47:56 +0000 (09:47 +1000)]
nouveau: reenable all the non-nv50 pipe drivers
They still won't build yet, but anyway..
Ben Skeggs [Thu, 19 Feb 2009 23:39:13 +0000 (09:39 +1000)]
nv50: remove unused variable
Ben Skeggs [Thu, 19 Feb 2009 23:38:06 +0000 (09:38 +1000)]
nv50: fix occlusion queries
Left behind from some gallium changes a while back..
Ben Skeggs [Thu, 19 Feb 2009 23:32:47 +0000 (09:32 +1000)]
nv50: rework for texture_transfer changes
Jakob Bornecrantz [Thu, 19 Feb 2009 22:15:28 +0000 (23:15 +0100)]
gallium: Renable pipe drivers disabled during vbuf changes
i965simple is not enabled because it is still broken.
Jakob Bornecrantz [Thu, 19 Feb 2009 21:48:21 +0000 (22:48 +0100)]
trival: Make the last of progs show the name
Brian Paul [Thu, 19 Feb 2009 21:37:43 +0000 (14:37 -0700)]
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...
Brian Paul [Thu, 19 Feb 2009 21:36:58 +0000 (14:36 -0700)]
mesa: fix/update/restore comments related to two-sided stencil
Brian Paul [Thu, 19 Feb 2009 21:34:33 +0000 (14:34 -0700)]
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).
José Fonseca [Thu, 19 Feb 2009 12:56:56 +0000 (12:56 +0000)]
util: Support PIPE_FORMAT_Z32_FLOAT in pipe_tile_raw_to_rgba
José Fonseca [Wed, 18 Feb 2009 15:12:16 +0000 (15:12 +0000)]
pipebuffer: Dump debugging info for fenced buffer list.
José Fonseca [Wed, 18 Feb 2009 15:05:23 +0000 (15:05 +0000)]
scons: Produce map files for debug builds too.
José Fonseca [Wed, 18 Feb 2009 10:25:04 +0000 (10:25 +0000)]
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.
Keith Whitwell [Tue, 17 Feb 2009 21:45:54 +0000 (21:45 +0000)]
draw: Reuse xmm registers.
Jakob Bornecrantz [Sat, 14 Feb 2009 16:48:11 +0000 (17:48 +0100)]
draw: Fix segfault if rast is null
Michel Dänzer [Thu, 19 Feb 2009 18:52:59 +0000 (19:52 +0100)]
gallium/winsys/xlib: Fix build with USE_XSHM undefined.
José Fonseca [Thu, 19 Feb 2009 13:15:25 +0000 (13:15 +0000)]
wgl: debug_printf in the main entry/exit points
José Fonseca [Thu, 19 Feb 2009 13:02:47 +0000 (13:02 +0000)]
mesa: Free the util shaders with the gallium's FREE.
José Fonseca [Thu, 19 Feb 2009 12:58:00 +0000 (12:58 +0000)]
wgl: Call pipe_screen::destroy on exit.
Alan Hourihane [Thu, 19 Feb 2009 13:07:37 +0000 (13:07 +0000)]
egl: glx updates for FBconfigs