Christian König [Tue, 29 Mar 2011 18:01:49 +0000 (20:01 +0200)]
[g3dvl] let mc code work on the different color planes seperately
Christian König [Sun, 27 Mar 2011 18:41:43 +0000 (20:41 +0200)]
[g3dvl] remove texture dependencies from mc code
Christian König [Sun, 27 Mar 2011 17:43:02 +0000 (19:43 +0200)]
[g3dvl] introduction of ycbcr buffers
Moves most of the buffer creation out of the idct code.
Christian König [Sun, 27 Mar 2011 00:53:04 +0000 (01:53 +0100)]
[g3dvl] no need for individual samplers for idct stage 1 & 2
Christian König [Sun, 27 Mar 2011 00:41:10 +0000 (01:41 +0100)]
[g3dvl] cleanup and improve idct error handling
Christian König [Sun, 27 Mar 2011 00:04:00 +0000 (01:04 +0100)]
[g3dvl] improve and cleanup mc error handling
Christian König [Sat, 26 Mar 2011 23:19:25 +0000 (00:19 +0100)]
[g3dvl] remove unused backbuffer from xvmc
Christian König [Sat, 26 Mar 2011 11:36:01 +0000 (12:36 +0100)]
[g3dvl] fully implement paletted subpictures
Christian König [Sat, 26 Mar 2011 10:53:27 +0000 (11:53 +0100)]
[g3dvl] correct subpicture stride in upload
Christian König [Sat, 26 Mar 2011 10:46:07 +0000 (11:46 +0100)]
[g3dvl] start implementing palettes for subpictures
Christian König [Sat, 26 Mar 2011 09:58:38 +0000 (10:58 +0100)]
[g3dvl] get sampler swizzle right for subpictures
This should make ai44 work correctly.
Christian König [Sat, 26 Mar 2011 01:03:16 +0000 (02:03 +0100)]
[g3dvl] add blend state to compositor
This seems to get at least mplayer working
Christian König [Sat, 26 Mar 2011 00:26:52 +0000 (01:26 +0100)]
[g3dvl] correct layer size calculation
Christian König [Sat, 26 Mar 2011 00:01:18 +0000 (01:01 +0100)]
[g3dvl] use quads instead of triangles for the compositor
Christian König [Fri, 25 Mar 2011 23:30:22 +0000 (00:30 +0100)]
[g3dvl] the sampler textview map is no longer needed
Christian König [Fri, 25 Mar 2011 23:20:16 +0000 (00:20 +0100)]
[g3dvl] throw out all unused parts of the interface
Christian König [Fri, 25 Mar 2011 22:38:50 +0000 (23:38 +0100)]
[g3dvl] rework supicture handling
This gets ia44 and ai44 at least partial working
Christian König [Fri, 25 Mar 2011 20:10:56 +0000 (21:10 +0100)]
[g3dvl] start implementing AI44 and IA44 subpicture
Christian König [Fri, 25 Mar 2011 18:32:22 +0000 (19:32 +0100)]
[g3dvl] make ref_surface handling more sane
Christian König [Thu, 24 Mar 2011 20:24:58 +0000 (21:24 +0100)]
[g3dvl] move sampler views for reference frames into context
Christian König [Thu, 24 Mar 2011 19:33:32 +0000 (20:33 +0100)]
[g3dvl] make mapping and flushing of buffers a public interface
Christian König [Tue, 22 Mar 2011 20:58:28 +0000 (21:58 +0100)]
[g3dvl] fix configure.ac for r600 video targets
Christian König [Tue, 22 Mar 2011 20:52:06 +0000 (21:52 +0100)]
[g3dvl] buffers must be aligned to macroblock size
Christian König [Tue, 22 Mar 2011 18:58:21 +0000 (19:58 +0100)]
[g3dvl] make video buffer a public available interface
Christian König [Sun, 20 Mar 2011 21:50:09 +0000 (22:50 +0100)]
[g3dvl] handle different mc types more similary
Christian König [Sun, 20 Mar 2011 21:14:49 +0000 (22:14 +0100)]
[g3dvl] simplify motion vector calculation
Christian König [Sun, 20 Mar 2011 20:34:38 +0000 (21:34 +0100)]
[g3dvl] rename motion vector fields
Christian König [Sun, 20 Mar 2011 18:45:06 +0000 (19:45 +0100)]
[g3dvl] correctly implement non power of two buffers
Christian König [Sun, 20 Mar 2011 18:29:47 +0000 (19:29 +0100)]
[g3dvl] cleanup idct init
Christian König [Sun, 20 Mar 2011 18:00:50 +0000 (19:00 +0100)]
[g3dvl] fix power_of_two buffer with/height handling
Christian König [Sat, 19 Mar 2011 11:26:17 +0000 (12:26 +0100)]
[g3dvl] merge fixes
Christian König [Sat, 19 Mar 2011 10:40:22 +0000 (11:40 +0100)]
r600g: revert some asm optimisations
They didn't have the desired effect and are still quite buggy
Christian König [Sat, 19 Mar 2011 00:02:40 +0000 (01:02 +0100)]
Merge remote branch 'origin/master' into pipe-video
Conflicts:
src/gallium/drivers/r600/r600_asm.c
src/gallium/tests/unit/SConscript
Christian König [Fri, 18 Mar 2011 20:44:47 +0000 (21:44 +0100)]
vdpau: add vdpau-r600 target
Christian König [Fri, 18 Mar 2011 20:12:08 +0000 (21:12 +0100)]
vdpau: fix formating and idention of surface.c
Christian König [Fri, 18 Mar 2011 18:34:02 +0000 (19:34 +0100)]
get softpipe winsys to compile again
Christian König [Fri, 18 Mar 2011 00:06:41 +0000 (01:06 +0100)]
vdpau: make indention and formating more sane
Christian König [Thu, 17 Mar 2011 23:26:34 +0000 (00:26 +0100)]
vdpau: merge fixes for vdpau state tracker
Christian König [Thu, 17 Mar 2011 21:18:05 +0000 (22:18 +0100)]
fix chroma swizzle
Christian König [Thu, 17 Mar 2011 19:13:51 +0000 (20:13 +0100)]
move empty block mask into mpeg12 context
Johannes Obermayr [Fri, 18 Mar 2011 18:10:07 +0000 (12:10 -0600)]
nouveau: Fix serious compiler warnings
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=35025
Signed-off-by: Brian Paul <brianp@vmware.com>
Brian Paul [Fri, 18 Mar 2011 02:31:58 +0000 (20:31 -0600)]
mesa: minor improvements in glTexEnvfv()
Brian Paul [Fri, 18 Mar 2011 02:31:58 +0000 (20:31 -0600)]
mesa: only report up to 50 _mesa_problem() calls
http://bugs.freedesktop.org/show_bug.cgi?id=35200 reports a disk
partition getting filled because of warning messages. Stop emitting
after 50.
Brian Paul [Fri, 18 Mar 2011 02:31:58 +0000 (20:31 -0600)]
swrast: report data type in error message
Kenneth Graunke [Sat, 26 Feb 2011 08:42:24 +0000 (00:42 -0800)]
mesa: Remove the CompileShader driver hook; it's just a no-op.
Brian Paul [Thu, 17 Mar 2011 03:13:31 +0000 (21:13 -0600)]
mesa: use _mesa_get_current_tex_unit() helper in BindTexture()
Brian Paul [Thu, 17 Mar 2011 03:13:31 +0000 (21:13 -0600)]
mesa: remove unneeded local var in BindTexture()
Brian Paul [Thu, 17 Mar 2011 03:13:31 +0000 (21:13 -0600)]
mesa: clean up the glBindTexture early out code a bit
Christian König [Wed, 16 Mar 2011 23:08:20 +0000 (00:08 +0100)]
[g3dvl] move mpeg12 context out of softpipe
Christian König [Wed, 16 Mar 2011 22:09:52 +0000 (23:09 +0100)]
[g3dvl] cleanup and documentation
Kenneth Graunke [Wed, 16 Mar 2011 07:00:09 +0000 (00:00 -0700)]
i965: Rename brw_(IF|CONT)_gen6 functions to gen6_(IF|CONT).
Tobias Droste [Wed, 16 Mar 2011 17:45:29 +0000 (18:45 +0100)]
autoconf: don't use CFLAGS for cpp files
Signed-off-by: Tobias Droste <tdroste@gmx.de>
Kenneth Graunke [Wed, 16 Mar 2011 07:11:48 +0000 (00:11 -0700)]
i965: Rename BRW_DATAPORT_..._GEN6 messages to GEN6_... for consistency.
Kenneth Graunke [Wed, 16 Mar 2011 07:06:59 +0000 (00:06 -0700)]
i965: Rename BRW_SAMPLER_MESSAGE_..._GEN5 to GEN5_SAMPLER_MESSAGE.
We already have lots of GEN6_* defines; this seems more consistent.
José Fonseca [Wed, 16 Mar 2011 15:46:21 +0000 (15:46 +0000)]
svga: Leave any_user_vertex_buffers flag alone.
It is pointless to change, now that we don't replace user vertex buffer
with uploaded copy, per commit
52e598d200108ab9cfc9c9d828bbebdc576e9703.
José Fonseca [Wed, 16 Mar 2011 15:43:00 +0000 (15:43 +0000)]
svga: Hardcode SVGA_COMBINE_USERBUFFERS to 1.
The code no longer supports otherwise -- it relies on buffers being
uploaded via u_upload_mgr -- so make this clear.
Also, there's no need to flush after draws from user buffers, given all
user content should have been copied by then.
José Fonseca [Thu, 10 Mar 2011 14:39:08 +0000 (14:39 +0000)]
mesa: Sort extensions in extension string by year.
The years were obtained automatically by scraping the first year from
the spec text file. They are approximate.
José Fonseca [Wed, 16 Mar 2011 11:17:48 +0000 (11:17 +0000)]
svga: Use transfer information on buffer transfers.
Should prevent the assert failure
svga_buffer_flush_mapped_range: Assertion `sbuf->map.writing' failed.
on nested transfers.
José Fonseca [Wed, 16 Mar 2011 09:16:01 +0000 (09:16 +0000)]
glsl2: Silence unused added variable gcc warning.
José Fonseca [Wed, 16 Mar 2011 09:15:30 +0000 (09:15 +0000)]
mesa: Use typecast in BITFIELD64_BIT macro.
Unsigned long is 32bit on several platforms (e.g., Windows), yielding
1UL << 32 to be zero.
Note that BITFIELD64_BIT result is often assigned to variables of type
GLbitfield, instead of GLbitfield64. That's probably wrong and should be
addressed in a later change.
Brian Paul [Tue, 15 Mar 2011 15:48:26 +0000 (09:48 -0600)]
mesa: use BITFIELD64_BIT() macro
Brian Paul [Tue, 15 Mar 2011 15:48:08 +0000 (09:48 -0600)]
st/mesa: use BITFIELD64_BIT() macro in a few more places
Brian Paul [Tue, 15 Mar 2011 15:18:40 +0000 (09:18 -0600)]
glsl: add cast to silence signed/unsigned comparison warning
Brian Paul [Tue, 15 Mar 2011 15:17:46 +0000 (09:17 -0600)]
mesa: use 1UL for 64-bit unsigned constant for C++
This fixes C++ warnings where BITFIELD64_BIT() is used.
Ian Romanick [Tue, 15 Mar 2011 23:33:27 +0000 (16:33 -0700)]
glsl: Only allow unsized array assignment in an initializer
It should have been a tip when the spec says "However, implicitly
sized arrays cannot be assigned to. Note, this is a rare case that
*initializers and assignments appear to have different semantics*."
(empahsis mine)
Fixes bugzilla #34367.
NOTE: This is a candidate for stable release branches.
Daniel Vetter [Tue, 15 Mar 2011 20:49:25 +0000 (21:49 +0100)]
i915g: fix braino in the static state rework
For mip-map level rendering, both draw offset and size tend to change ...
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Daniel Vetter [Mon, 14 Mar 2011 21:13:01 +0000 (22:13 +0100)]
i915g: implement early z
v2: Make it actually work.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Daniel Vetter [Tue, 15 Mar 2011 17:36:00 +0000 (18:36 +0100)]
i915g: split up static state
Early Z support is set in the DST_VARS command. Hence split up static
state emission to avoid reissuing to much on fragment shader changes,
especially the costly dst buffer relocations.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Eric Anholt [Sat, 12 Mar 2011 01:39:49 +0000 (17:39 -0800)]
i965: Fix alpha testing when there is no color buffer in the FBO.
We were alpha testing against an unwritten value, resulting in garbage.
(part of) Bug #35073.
Eric Anholt [Fri, 11 Mar 2011 22:50:17 +0000 (14:50 -0800)]
i965: Do our lowering passes before the loop of optimization.
The optimization loop won't reinsert noise instructions or quadop
vectors, so we were traversing the tree for nothing. Lowering vector
indexing was in the loop after do_common_optimization() to avoid the
work if it ended up that the index was actually constant, but that has
been called already in the core.
Eric Anholt [Fri, 11 Mar 2011 22:08:48 +0000 (14:08 -0800)]
glsl: Skip processing the first function's body in do_dead_functions().
It can't call anything, so there's no point.
Eric Anholt [Fri, 11 Mar 2011 22:02:46 +0000 (14:02 -0800)]
glsl: Whitespace fixup in opt_dead_functions.cpp.
Eric Anholt [Fri, 11 Mar 2011 21:23:13 +0000 (13:23 -0800)]
glsl: Skip processing of expression trees in discard simplification.
It only cares about "if", "loop", and "discard".
Eric Anholt [Fri, 11 Mar 2011 21:17:03 +0000 (13:17 -0800)]
glsl: Reduce processing of expression trees in do_structure_splitting.
Most of the time we don't have a non-uniform struct variable in the
shader, so this cuts the time spent in do_structure_splitting during
glean texCombine by about 2/3.
Eric Anholt [Fri, 11 Mar 2011 21:08:26 +0000 (13:08 -0800)]
glsl: Skip processing expression trees in do_if_simplification().
Reduces time spent in this during glean texCombine by about 2/3.
Eric Anholt [Fri, 11 Mar 2011 21:03:54 +0000 (13:03 -0800)]
glsl: Skip processing expression trees in optimize_redundant_jumps()
Cuts the time spent in this function during glean texCombine by 2/3.
José Fonseca [Mon, 14 Mar 2011 16:55:46 +0000 (16:55 +0000)]
svga: Tell the host to discard when doing writes without FLUSH_EXPLICIT.
José Fonseca [Tue, 15 Mar 2011 15:43:33 +0000 (15:43 +0000)]
svga: Update svga_winsys_screen::buffer_map comments.
José Fonseca [Fri, 11 Mar 2011 14:00:25 +0000 (14:00 +0000)]
svga: Ensure DMA commands are serialized with unsynchronized flag is unset.
Jose Fonseca [Fri, 11 Mar 2011 23:33:18 +0000 (16:33 -0700)]
scons: copy hash_table.c, symbol_table.c to glsl directory
This fixes an issue where the .obj files wound up in the src/
directory rather than the build/ directory. That prevented
combined 32-bit and 64-bit builds from working.
Signed-off-by: Brian Paul <brianp@vmware.com>
Marek Olšák [Tue, 15 Mar 2011 15:25:16 +0000 (16:25 +0100)]
mesa: fix scons build
Marek Olšák [Tue, 8 Mar 2011 10:34:28 +0000 (11:34 +0100)]
r300g: implement the texture barrier
Marek Olšák [Tue, 8 Mar 2011 10:32:35 +0000 (11:32 +0100)]
gallium: add texture barrier support to the interface and st/mesa (v2)
v2: change the gallium entry point to texture_barrier.
Marek Olšák [Fri, 11 Mar 2011 23:15:22 +0000 (00:15 +0100)]
mesa: add display list support for NV_texture_barrier
Marek Olšák [Tue, 8 Mar 2011 10:30:54 +0000 (11:30 +0100)]
mesa: regenerate glapi files
Be sure to type "make clean" after this commit, otherwise your binaries
will segfault.
Marek Olšák [Tue, 8 Mar 2011 10:29:20 +0000 (11:29 +0100)]
mesa: add NV_texture_barrier
Mathias Fröhlich [Thu, 10 Mar 2011 05:46:32 +0000 (06:46 +0100)]
gallium/util: Use PIPE_TRANSFER_DISCARD_RANGE in pipe_buffer_write.
Additionally, to discarding the whole buffer, use
PIPE_TRANSFER_DISCARD_RANGE in pipe_buffer_write when the
write covers only part of the buffer.
Signed-off-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
Mathias Fröhlich [Sat, 26 Feb 2011 07:20:34 +0000 (08:20 +0100)]
st/mesa: Make use of the new PIPE_TRANSFER_DISCARD_* for buffer object.
In memory mapping buffer objects make use of
PIPE_TRANSFER_DISCARD_WHOLE_RESOURCE and PIPE_TRANSFER_DISCARD_RANGE
when appropriate.
Signed-off-by: Mathias Fröhlich <Mathias.Froehlich@web.de>
Dave Airlie [Tue, 15 Mar 2011 04:26:57 +0000 (14:26 +1000)]
glx: add ARB_create_context functions/ops to glx xml
Henri Verbeet [Tue, 15 Mar 2011 00:13:45 +0000 (01:13 +0100)]
r600g: FLT_TO_INT_FLOOR and FLT_TO_INT_RPI are vector-only instructions on Evergreen.
Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
Alex Deucher [Mon, 14 Mar 2011 22:07:15 +0000 (18:07 -0400)]
r600g: fix logic error in
028987c80362eddd39176628486a456b076f0427
Spotted by Henri on IRC.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Alex Deucher [Mon, 14 Mar 2011 21:53:00 +0000 (17:53 -0400)]
r600g: don't set per-MRT blend bits on R600
It doesn't support them. Also, we shouldn't be
emitting CB_BLENDx_CONTROL on R600 as the regs don't
exist there, but I'm not sure of the best way to deal
with this in the current r600 winsys.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Alex Deucher [Mon, 14 Mar 2011 21:47:21 +0000 (17:47 -0400)]
r600g: Original R600 does not support per-MRT blends
Only rv6xx+ support them.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Alex Deucher [Mon, 14 Mar 2011 20:58:27 +0000 (16:58 -0400)]
r600g: emit SURFACE_BASE_UPDATE packet on rv6xx
This packet is required when updating the DB, CB,
or STRMOUT base addresses on rv6xx for the surface
sync logic to work correctly.
Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Henri Verbeet [Mon, 14 Mar 2011 21:07:44 +0000 (22:07 +0100)]
r600g: Properly update MULTIWRITE_ENABLE in r600_pipe_shader_ps().
This sort of worked because blend state setup cleared MULTIWRITE_ENABLE again,
but that's not something we want to depend on.
Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
Henri Verbeet [Mon, 14 Mar 2011 21:07:44 +0000 (22:07 +0100)]
r600g: Fix the DB_SHADER_CONTROL mask in create_ds_state().
Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
Henri Verbeet [Mon, 14 Mar 2011 21:07:44 +0000 (22:07 +0100)]
r600g: Properly update DB_SHADER_CONTROL in evergreen_pipe_shader_ps().
Disable Z_EXPORT / STENCIL_EXPORT / KILL_ENABLE again if a shader doesn't
use those. This is similar to
0a6f09a76a416b8672e149c520aa5bef33174223.
Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
Henri Verbeet [Mon, 14 Mar 2011 21:07:44 +0000 (22:07 +0100)]
r600g: Move fetch shader register setup to r600_state.c / evergreen_state.c.
Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
Henri Verbeet [Mon, 14 Mar 2011 21:07:44 +0000 (22:07 +0100)]
r600g: Move r600_pipe_shader_ps() to r600_state.c.
Signed-off-by: Henri Verbeet <hverbeet@gmail.com>
Henri Verbeet [Mon, 14 Mar 2011 21:07:44 +0000 (22:07 +0100)]
r600g: Move r600_pipe_shader_vs() to r600_state.c.
The idea behind this is that anything touching registers should be in
r600_state.c or evergreen_state.c. This is also consistent with
evergreen_pipe_shader_vs().
Signed-off-by: Henri Verbeet <hverbeet@gmail.com>