Brian Paul [Sat, 18 Apr 2009 16:20:26 +0000 (10:20 -0600)]
demos: fix incorrect assertion
Brian Paul [Sat, 18 Apr 2009 16:08:54 +0000 (10:08 -0600)]
mesa: add switch case for GL_VERTEX_STATE_PROGRAM_NV in _mesa_new_program()
Fixes bug seen in progs/tests/vptest1.c
Brian Paul [Sat, 18 Apr 2009 16:08:15 +0000 (10:08 -0600)]
demos: fix usage text
Michel Dänzer [Sat, 18 Apr 2009 13:47:14 +0000 (15:47 +0200)]
intel: Handle ARB_vertex_buffer_object state in intel_clear_tris().
Fixes gearsvbo app by Michael Clark.
Brian Paul [Fri, 17 Apr 2009 22:23:33 +0000 (16:23 -0600)]
demos: new glsl/array.c demo
Test variable indexing into a uniform array in a vertex shader.
Brian Paul [Fri, 17 Apr 2009 22:11:05 +0000 (16:11 -0600)]
intel: make sure polygon mode is set properly in intel_clear_tris()
Fixes progs/glsl/skinning.c demo.
Brian Paul [Fri, 17 Apr 2009 22:04:41 +0000 (16:04 -0600)]
mesa: suppress extra newline
Brian Paul [Fri, 17 Apr 2009 22:01:20 +0000 (16:01 -0600)]
i915: fix broken indirect constant buffer reads
The READ message's msg_control value can be 0 or 1 to indicate that the
Oword should be read into the lower or upper half of the target register.
It seems that the other half of the register gets clobbered though. So
we read into two dest registers then use a MOV to combine the upper/lower
halves.
Brian Paul [Fri, 17 Apr 2009 19:55:58 +0000 (13:55 -0600)]
mesa: build a float[4] value in _mesa_add_sampler() to avoid random values
Brian Paul [Thu, 16 Apr 2009 22:41:07 +0000 (16:41 -0600)]
dri: build DRI swrast driver too
Brian Paul [Thu, 16 Apr 2009 22:37:53 +0000 (16:37 -0600)]
dri: __driUtilMessage(): not all messages are errors
Brian Paul [Thu, 16 Apr 2009 22:29:45 +0000 (16:29 -0600)]
mesa: minor tweak to error message
Brian Paul [Thu, 16 Apr 2009 21:43:32 +0000 (15:43 -0600)]
i965: updated CURBE allocation code
Now that we have real constant buffers, the demands on the CURBE are lessened.
When we use real VS/WM constant buffers we only use the CURBE for clip planes.
Jakob Bornecrantz [Fri, 17 Apr 2009 19:23:14 +0000 (21:23 +0200)]
xlib/trace: Fixup xlib trace
José Fonseca [Fri, 17 Apr 2009 17:40:46 +0000 (18:40 +0100)]
pipe: Get the p_atomic_dec_zero logic right this time.
Brian Paul [Fri, 17 Apr 2009 15:15:58 +0000 (09:15 -0600)]
demos: move glewInit() call, fixes crash/bug 21247
Michel Dänzer [Fri, 17 Apr 2009 15:02:34 +0000 (17:02 +0200)]
gallium: Fix PIPE_ATOMIC_GCC_INTRINSIC build.
Brian Paul [Fri, 17 Apr 2009 14:09:17 +0000 (08:09 -0600)]
demos: move glewInit() after glutCreateWindow()
Fixes segfault. See bug 21239. However, the demo doesn't render
properly. Probably a bug in the GL_ATI_fragment_shader code.
Jakob Bornecrantz [Fri, 17 Apr 2009 13:55:51 +0000 (15:55 +0200)]
trace: Keep screen objects on lists
Jakob Bornecrantz [Fri, 17 Apr 2009 14:00:25 +0000 (16:00 +0200)]
trace: Fix is_referenced functions
Jakob Bornecrantz [Fri, 17 Apr 2009 13:52:05 +0000 (15:52 +0200)]
trace: Simplify trace_buffer function
José Fonseca [Fri, 17 Apr 2009 14:01:38 +0000 (15:01 +0100)]
pipe: Fix InterlockedDecrement usage.
José Fonseca [Fri, 17 Apr 2009 13:55:49 +0000 (14:55 +0100)]
wgl: Put commas in the right places.
José Fonseca [Fri, 17 Apr 2009 13:53:10 +0000 (14:53 +0100)]
wgl: Flip the pixel format order.
List 32bit pixel formats first, as nobody is interested in 16bit pixel
formats nowadays.
Thomas Hellstrom [Fri, 17 Apr 2009 09:47:30 +0000 (11:47 +0200)]
gallium: Create OGL state tracker wrappers for various CPU access operations.
There are two usage types of buffer CPU accesses:
One where we try to use the buffer contents for multiple draw commands in
a batch. (batch := sequence of commands that are flushed together),
like incrementally adding bitmaps to a bitmap texture that is reallocated
on flush.
And one where we assume we can safely overwrite the old buffer contexts, like
glTexSubImage. In this case we need to make sure all old drawing commands
referencing the buffer are flushed before we map the buffer.
This is easily forgotten.
Add wrappers for the most common of these operations. The first type is
prefixed with "st_no_flush" and the second type is prefixed with
"st_cond_flush", where "cond" indicates that we attmpt to only flush
if there is indeed unflushed draw commands referencing the buffer.
Prefixed functions are
screen::get_tex_transfer
pipe_buffer_write
pipe_buffer_read
pipe_buffer_map
Please use the wrappers whenever possible.
Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
Zack Rusin [Fri, 17 Apr 2009 11:05:24 +0000 (07:05 -0400)]
egl: don't crash with one more khronos api
Keith Whitwell [Fri, 17 Apr 2009 10:01:22 +0000 (11:01 +0100)]
gallium: simplify further the logic for selecting mutex implementation
Cleaner than the previous cleanup...
Keith Whitwell [Fri, 17 Apr 2009 09:38:07 +0000 (10:38 +0100)]
util: flush stdout before emitting debug_printf on stderr
A lot of the mesa demos emit commentary on stdout, try to keep it in
sync with the corresponding output from debug_printf().
Keith Whitwell [Fri, 17 Apr 2009 09:17:59 +0000 (10:17 +0100)]
gallium: add #warning to mutex-based atomic implementation
Some builds end up picking this up.
José Fonseca [Fri, 17 Apr 2009 09:07:53 +0000 (10:07 +0100)]
python/retrace: Rename module as it conflicts with a builtin module.
And there is no way to override a builtin module... sigh
José Fonseca [Thu, 16 Apr 2009 20:41:01 +0000 (21:41 +0100)]
scons: Cleanup.
Brian Paul [Thu, 16 Apr 2009 16:28:27 +0000 (10:28 -0600)]
demos: set init window size, not pos
Brian Paul [Thu, 16 Apr 2009 16:28:15 +0000 (10:28 -0600)]
docs: separate compilation units in 7.5
Brian Paul [Fri, 17 Apr 2009 04:02:54 +0000 (22:02 -0600)]
Merge branch 'register-negate'
Alan Coopersmith [Fri, 17 Apr 2009 03:06:08 +0000 (20:06 -0700)]
egl/main/Makefile: Add dependency of install target on default build target
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Eric Anholt [Thu, 16 Apr 2009 18:32:30 +0000 (11:32 -0700)]
i915: Remove dead i830TexEnv and i915TexEnv.
These LOD bias updates are covered by the texture state uploads in
*_texstate.c now.
Eric Anholt [Fri, 10 Apr 2009 01:30:12 +0000 (18:30 -0700)]
intel: Add support for argb1555, argb4444 FBOs and fix rgb565 fbo readpixels.
Also enable them all regardless of screen bpp, as 32 bpp what I've been
testing against, and haven't been able to detect any screen bpp-specific
troubles with them.
Brian Paul [Thu, 16 Apr 2009 17:08:12 +0000 (11:08 -0600)]
i965: disable using immediate values for MOV instructions
For some reason, MOV instructions using immediate src values don't seem
to work reliably on the GLSL path. Disable them for now (falling back to
const buffer reads). This fixes a bunch of glean glsl1 failures.
Brian Paul [Thu, 16 Apr 2009 17:06:00 +0000 (11:06 -0600)]
i965: minor debug output changes
Brian Paul [Wed, 15 Apr 2009 22:49:48 +0000 (16:49 -0600)]
i965: const buffer debug code (disabled)
Brian Paul [Wed, 15 Apr 2009 22:49:18 +0000 (16:49 -0600)]
i965: implement relative addressing for VS constant buffer reads
A scatter-read should be possible, but we're just using two READs for
the time being.
Brian Paul [Wed, 15 Apr 2009 20:53:51 +0000 (14:53 -0600)]
i965: handle address reg in get_dst()
Brian Paul [Wed, 15 Apr 2009 18:22:47 +0000 (12:22 -0600)]
i965: fix const buffer temp register clobbering
Calls to release_tmps() were causing the temps holding constants to get
recycled.
Lars Henning Wendt [Thu, 16 Apr 2009 16:14:17 +0000 (10:14 -0600)]
mesa: fix bad mask bit in clip plane restore code for glPopAttrib()
Roland Scheidegger [Thu, 16 Apr 2009 15:39:43 +0000 (17:39 +0200)]
intel: fix small compressed texture upload
need to round up height for _mesa_copy_rect otherwise
textures with height smaller than 4 won't get copied to the miptree at all
Also fix up the confusing debug output (don't output unitialized values,
and output if data is present and the compressed flag)
Brian Paul [Thu, 16 Apr 2009 15:31:45 +0000 (09:31 -0600)]
mesa: add distclean target to top-level Makefile
Brian Paul [Thu, 16 Apr 2009 15:25:52 +0000 (09:25 -0600)]
demos: use larger buffer for snprintf() call, see bug 21220
Keith Whitwell [Thu, 16 Apr 2009 11:19:19 +0000 (12:19 +0100)]
vbo: cache last dlist vertex in malloced memory
Avoids repeated mapping of the VBO buffer on display list replay. We
need access to the final vertex in order to update the GL current attrib
values.
José Fonseca [Thu, 16 Apr 2009 09:51:42 +0000 (10:51 +0100)]
Merge branch 'gallium-s3tc'
Jakob Bornecrantz [Wed, 15 Apr 2009 21:36:22 +0000 (23:36 +0200)]
progs/tests: Make texcompress2 get texture
Jakob Bornecrantz [Wed, 15 Apr 2009 21:33:07 +0000 (23:33 +0200)]
util: Fix surface usage
Brian Paul [Wed, 15 Apr 2009 15:54:04 +0000 (09:54 -0600)]
st: remove XXX comment
Brian Paul [Wed, 15 Apr 2009 15:52:04 +0000 (09:52 -0600)]
st: check for fast memcpy path in decompress_with_blit()
Brian Paul [Wed, 15 Apr 2009 15:51:38 +0000 (09:51 -0600)]
st: st_equal_formats() function to compare gallium/GL pixel formats
Brian Paul [Wed, 15 Apr 2009 15:37:22 +0000 (09:37 -0600)]
st: decompress_with_blit() path for glGetTexImage().
Decompress a texture by rendering a textured quad.
Brian Paul [Wed, 15 Apr 2009 15:36:03 +0000 (09:36 -0600)]
gallium: new, simple RGBA surface create/destroy helpers
Use these for quickly creating an RGBA drawing surface.
Thomas Hellstrom [Wed, 15 Apr 2009 15:22:40 +0000 (17:22 +0200)]
r300-gallium: Fixup for commit
9b75627fab5bf2ea90f27ddd31b60c54895f6de6.
Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
Thomas Hellstrom [Wed, 15 Apr 2009 13:53:34 +0000 (15:53 +0200)]
gallium: Make sure we flush before some texture / buffer operations.
Also implement context member functions to optimize away those
flushes whenever possible.
Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
Brian Paul [Thu, 16 Apr 2009 01:55:00 +0000 (19:55 -0600)]
tests: another extended swizzle test
Corbin Simpson [Wed, 15 Apr 2009 22:09:43 +0000 (15:09 -0700)]
r300-gallium: Use viewport state.
Corbin Simpson [Wed, 15 Apr 2009 21:12:11 +0000 (14:12 -0700)]
r300-gallium: Don't use indexbufs for now.
They aren't working, so best to turn it off.
Corbin Simpson [Wed, 15 Apr 2009 20:25:20 +0000 (13:25 -0700)]
r300-gallium: Point size is at OVM position 15, not 1.
Or so sayeth osiris, and he would know. :3
Corbin Simpson [Wed, 15 Apr 2009 20:23:25 +0000 (13:23 -0700)]
r300-gallium: vs: Dot products.
Eric Anholt [Tue, 14 Apr 2009 23:31:26 +0000 (16:31 -0700)]
i965: Clean up output of WM SS state dump, and add format output.
Eric Anholt [Fri, 10 Apr 2009 01:31:59 +0000 (18:31 -0700)]
i915: Use DEBUG_WM (like 965) for printing the fragment program out.
This is nice when paired with INTEL_DEBUG=batch for debugging what's going
out to the hardware.
Eric Anholt [Fri, 10 Apr 2009 01:31:28 +0000 (18:31 -0700)]
i915: Add decode of dest buffer variables (destination format)
Eric Anholt [Fri, 10 Apr 2009 23:47:14 +0000 (16:47 -0700)]
mesa: Update texenv program when _NEW_ARRAYS is updated as well.
This fixes a regression in fbotest1 on 915, where a transition from
color+vertex array enabled to texcoord0+vertex array enabled wouldn't trigger
program update on the second _mesa_update_state of DrawArrays, and we'd sample
a constant texcoord of 0,0,0,1 instead of the array.
The double state update in DrawArrays from
1680ef869625dc1fe9cf481b180382a34e0738e7 still needs fixing.
Eric Anholt [Thu, 9 Apr 2009 18:03:03 +0000 (11:03 -0700)]
intel: Fix segfault when doing SW mipmap generation with a PBO texture upload.
Triggered in test-fbo from clutter since
37fb2d9b23eab5dbbb43a212c3475cb8016837d8.
José Fonseca [Wed, 15 Apr 2009 19:07:48 +0000 (20:07 +0100)]
mesa: TGSI translation of multiple render targets.
Brian Paul [Wed, 15 Apr 2009 14:01:01 +0000 (08:01 -0600)]
glx: added null pointer check in glXGetFBConfigs()
Fixes segfault seen with glxinfo with NVIDIA OpenGL.
Brian Paul [Wed, 15 Apr 2009 04:14:30 +0000 (22:14 -0600)]
mesa: merge the prog_src_register::NegateBase and NegateAbs fields
There's really no need for two negation fields. This came from the
GL_NV_fragment_program extension. The new, unified Negate bitfield applies
after the absolute value step.
Brian Paul [Wed, 15 Apr 2009 02:00:28 +0000 (20:00 -0600)]
mesa: remove unused matrixType param from ctx->Driver.UniformMatrix() functions
Brian Paul [Wed, 15 Apr 2009 01:56:59 +0000 (19:56 -0600)]
mesa: move #define for GL_PROGRAM_BINARY_LENGTH_OES
Brian Paul [Wed, 15 Apr 2009 01:53:37 +0000 (19:53 -0600)]
mesa: remove NV vertex/fragment program print/debug code
The code in prog_print.c can be used instead.
Brian Paul [Wed, 15 Apr 2009 01:44:16 +0000 (19:44 -0600)]
mesa: use standard offsetof() macro
Brian Paul [Tue, 14 Apr 2009 22:05:28 +0000 (16:05 -0600)]
i965: fix VS constant buffer reads
This mostly came down to finding the right MRF incantation in the
brw_dp_READ_4_vs() function.
Note: this feature is still disabled (but getting close to done).
Adam Jackson [Tue, 14 Apr 2009 21:56:29 +0000 (17:56 -0400)]
glx: Make glXGetScreenDriver() work for DRI2
José Fonseca [Tue, 14 Apr 2009 20:39:54 +0000 (21:39 +0100)]
scons: Support winddk 6001.18002.
José Fonseca [Tue, 14 Apr 2009 20:31:34 +0000 (21:31 +0100)]
scons: Recent Windows DDK do not include LIB.EXE.
Have to use LINK /LIB instead. The biggest problem is when the command
line is very long and all the options are included in a argument file --
link doesn't like if /LIB is included in the argument file.
José Fonseca [Tue, 14 Apr 2009 20:27:58 +0000 (21:27 +0100)]
mesa: Fix gcc assembly enable logic.
The i386 symbol is defined on WINDDK.
Ian Romanick [Sat, 11 Apr 2009 21:02:33 +0000 (14:02 -0700)]
DRI2: Don't fault on NULL DrawBuffer
It is possible for ctx->DrawBuffer to be NULL, so don't fault when
that happens. This change is not being committed to master because it
doesn't appear to be necessary there.
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Cherry picked from mesa_7_4_branch, commit
49e0c74ddd91900fc4effb6d305d56e0563b456d
Brian Paul [Tue, 14 Apr 2009 17:08:42 +0000 (11:08 -0600)]
i965: checkpoint commit: VS constant buffers
Hook up a constant buffer, binding table, etc for the VS unit.
This will allow using large constant buffers with vertex shaders.
The new code is disabled at this time (use_const_buffer=FALSE).
Younes Manton [Tue, 14 Apr 2009 01:24:44 +0000 (21:24 -0400)]
dri glx: Swap before checking for cliprects.
We don't update drawables anymore unless they are completely
uninitialized, so we need to swap even if we don't have
cliprects yet, otherwise we never end up calling the driver's
SwapBuffers(). The driver should update the drawable in its
SwapBuffers() anyway.
See
8e753d04045a82062ac34d3b2622eb9dba8af374,
"dri glx: Fix dri_util::driBindContext" for the change that
exposed it.
Ben Skeggs [Mon, 13 Apr 2009 04:41:06 +0000 (14:41 +1000)]
nv50: fix mrt clear
Corbin Simpson [Sat, 11 Apr 2009 01:34:55 +0000 (18:34 -0700)]
r300-gallium: Split up vertex format tallying for HW and SW TCL.
This makes things draw (again) with HW TCL. Yay?
Corbin Simpson [Sat, 11 Apr 2009 01:15:46 +0000 (18:15 -0700)]
r300-gallium: Finish up cleanup of vertex format state.
This makes texcoords route properly, and also fixes a few asserts.
Corbin Simpson [Fri, 10 Apr 2009 23:14:12 +0000 (16:14 -0700)]
r300-gallium: Clean up vertex format setup.
Brian Paul [Fri, 10 Apr 2009 19:32:04 +0000 (13:32 -0600)]
i965: remove unused var
Brian Paul [Fri, 10 Apr 2009 19:21:27 +0000 (13:21 -0600)]
i965: clean-up in prepare_wm_surfaces()
Brian Paul [Fri, 10 Apr 2009 17:17:35 +0000 (11:17 -0600)]
mesa: reduce makefile output
José Fonseca [Fri, 10 Apr 2009 18:48:59 +0000 (19:48 +0100)]
wgl: Protect the framebuffer with a lock.
Unfortunately this doesn't catch all the cases, as the mesa state tracker
can still use the framebuffer without giving the wgl state tracker
the chance to lock it.
José Fonseca [Fri, 10 Apr 2009 17:43:51 +0000 (18:43 +0100)]
wgl: Note down the gallium pixel formats, instead of re-guessing them.
José Fonseca [Fri, 10 Apr 2009 17:14:22 +0000 (18:14 +0100)]
wgl: Query the screen for supported formats.
José Fonseca [Fri, 10 Apr 2009 16:22:21 +0000 (17:22 +0100)]
wgl: Walk through the pixel formats combinations.
José Fonseca [Fri, 10 Apr 2009 15:37:15 +0000 (16:37 +0100)]
wgl: Keep copies of the PIXELFORMATDESCRIPTOR structures.
Robert Noland [Fri, 10 Apr 2009 16:41:27 +0000 (11:41 -0500)]
Build dri drivers for powerpc and sparc on FreeBSD.
Brian Paul [Fri, 10 Apr 2009 14:56:03 +0000 (08:56 -0600)]
mesa: asst. progs/test/Makefile files
Brian Paul [Fri, 10 Apr 2009 14:36:04 +0000 (08:36 -0600)]
i965: added null const_buffer pointer check in update_constant_buffer()
Brian Paul [Fri, 10 Apr 2009 14:35:21 +0000 (08:35 -0600)]
intel: added screen->dri2.loader null pointer check in intel_flush()
Fixes segfaults when rendering to front buffer.
Brian Paul [Fri, 10 Apr 2009 14:05:10 +0000 (08:05 -0600)]
gallium: remove pipe_texture::compressed field
The format field encodes compressed vs. uncompressed already. We can easily
check if a texture is compressed with pf_is_compressed(texture->format).