Commit Graph

39144 Commits

Author SHA1 Message Date
Tilman Sauerbeck 57bf96b43b r600g: Honour destination operand's writemask in the SCS implementation.
If we are not going to write to the X or Y components of the destination
vector we also don't need to prepare to compute SIN or COS.

Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-09-20 21:22:48 +02:00
Luca Barbieri 86d5ec70d1 softpipe: fix whitespace 2010-09-20 20:49:48 +02:00
Luca Barbieri de71e7a4c9 tgsi: add switch/case opcodes to tgsi_opcode_tmp.h 2010-09-20 20:23:35 +02:00
Luca Barbieri 2e7d1c2c86 softpipe: make z/s test always pass if no zsbuf, instead of crashing
D3D10 specifies this.
2010-09-20 20:23:35 +02:00
Luca Barbieri 6d0b695fa7 gallium: avoid the C++ keyword "template" in sw_winsys.h 2010-09-20 20:23:34 +02:00
Brian Paul b2ad8b5c22 gallivm: remove debug code 2010-09-20 11:21:44 -06:00
Brian Paul 7888a2f822 llvmpipe: fix query bug when no there's no scene 2010-09-20 10:50:35 -06:00
Marek Olšák 168554904b st/mesa: fix assertion failure in GetTexImage for cubemaps
Can be reproduced with mesa/demos/src/tests/blitfb.

NOTE: This is a candidate for the 7.9 branch.
2010-09-20 18:14:23 +02:00
Jerome Glisse 363dfb83f1 r600g: move chip class to radeon common structure
So texture code can be shared btw new state design
& old one.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-09-20 11:59:20 -04:00
Kenneth Graunke 6ea16b6c51 glsl: Fix broken handling of ir_binop_equal and ir_binop_nequal.
When ir_binop_all_equal and ir_binop_any_nequal were introduced, the
meaning of these two opcodes changed to return vectors rather than a
single scalar, but the constant expression handling code was incorrectly
written and only worked for scalars.  As a result, only the first
component of the returned vector would be properly initialized.
2010-09-20 17:33:13 +02:00
Kenneth Graunke 14eea26828 glsl: Add comments to clarify the types of comparison binops. 2010-09-20 17:31:16 +02:00
Brian Paul 0bc3e1f4f4 docs: mark as obsolete, remove dead links 2010-09-20 08:59:04 -06:00
Brian Paul a8fde1ba4d docs: remove old broken link 2010-09-20 08:59:01 -06:00
Brian Paul 1739124159 glsl2: silence compiler warnings in printf() calls
Such as: "ir_validate.cpp:143: warning: format ‘%p’ expects type ‘void*’,
but argument 2 has type ‘ir_variable*’"
2010-09-20 08:22:54 -06:00
Brian Paul 5522887842 mesa: don't call valid_texture_object() in non-debug builds
This reverts commit c32bac57ed
and silences the warning differently.

The _mesa_reference_texobj() function is called quite a bit and
we don't want to call valid_texture_object() all the time in non-
debug builds.
2010-09-20 08:21:00 -06:00
Ian Romanick e053d62aa5 glsl: Add doxygen comments 2010-09-20 07:09:03 -07:00
Jakob Bornecrantz 208f1f3810 i915g: Link with wrapper sw winsys with scons 2010-09-20 15:33:20 +02:00
Michal Krol 279492386f svga: Integer constant register file has a separate namespace.
Count int and float constants independently. Since there are only
few i# constants available and hundreds of c# constants, it would
be too easy to end up with an i# declaration out of its range.
2010-09-20 09:26:49 +01:00
Michal Krol 0742e0b376 svga: Fix relative addressing translation for pixel shaders.
Pixel shaders do not have address registers a#, only one
loop register aL. Our only hope is to assume the address
register is in fact a loop counter and replace it with aL.

Do not translate ARL instruction for pixel shaders -- MOVA
instruction is only valid for vertex saders.

Make it more explicit relative addressing of inputs is only valid
for pixel shaders and constants for vertex shaders.
2010-09-20 09:26:17 +01:00
Corbin Simpson 0d53dfa3c5 r600g: Cleanup viewport floats. 2010-09-19 23:05:02 -07:00
Corbin Simpson e98062673e r600g: Clean up PS setup.
I didn't do r600d according to the docs; I split EXPORT_MODE to be a bit more
useful and obvious. Hope this is okay.
2010-09-19 23:05:02 -07:00
Dave Airlie f4020c66fd r600g: only flush for the correct colorbuffer, not all of them. 2010-09-20 15:39:03 +10:00
Dave Airlie 7e5173d065 r600g: add missing BC_INST wrapper for evergreen 2010-09-20 15:38:40 +10:00
Dave Airlie b110ddd9a9 r600g: fixup r700 CB_SHADER_CONTROL register.
r600c emits this with a mask of each written output.
2010-09-20 15:36:52 +10:00
Dave Airlie d172ef3138 r600g: fix r700 cube map sizing.
this fixes fbo-cubemap on r700.
2010-09-20 15:30:52 +10:00
Dave Airlie 3a1defa5e8 r600g: add color/texture support for more depth formats. 2010-09-20 12:21:35 +10:00
Dave Airlie 2cabbb290f r600g: add z16 to color setup 2010-09-20 12:04:52 +10:00
Dave Airlie 9b146eae25 r600g: fix tiling support for ddx supplied buffers
needed to emit some more relocs to the kernel.
2010-09-20 11:40:33 +10:00
Corbin Simpson c2ba729321 r600g: "tmp" is such a bad name for a texture. 2010-09-19 18:25:02 -07:00
Corbin Simpson 07b9e22a1f r600g: Fix false and true. 2010-09-19 18:25:02 -07:00
Corbin Simpson eb347c7ef0 r600g: Clean up some indentation and |= vs. | usage. 2010-09-19 18:25:01 -07:00
Corbin Simpson 7ee9b0b951 r600g: Deobfuscate and comment a few more functions in r600_hw_states. 2010-09-19 18:25:01 -07:00
Corbin Simpson f76b81423e r600g: Trivially deobfuscate r600_hw_states. 2010-09-19 18:25:01 -07:00
Corbin Simpson 5f5bf25af5 r600g: Use align() instead of handrolled code. 2010-09-19 18:25:01 -07:00
Dave Airlie 8d1ec80319 r600g: drop debugging that snuck in 2010-09-20 10:45:18 +10:00
Dave Airlie 040411de26 r600g: clean up valgrind issues on maxtargets test. 2010-09-20 10:44:44 +10:00
Dave Airlie 4af55364cc r600g: fix fbo-drawbuffers-maxtargets
we were leaking buffers since the flush code was added, it wasn't dropping references.
move setting up flush to the set_framebuffer_state.
clean up the flush state object.
make more space in the BOs array for flushing.
2010-09-20 10:35:38 +10:00
Dave Airlie 3d12c207d7 r600g: send correct surface base update for multi-cbufs 2010-09-20 10:15:26 +10:00
Dave Airlie f59fe9671f r600g: modify index buffers for sizes the hw can't deal with.
this just uses the common code from r300g now in util to do translations on r600g.
2010-09-20 09:57:47 +10:00
Dave Airlie 91b70d8408 util/r300g: split the r300 index buffer modifier functions out to util
These can be used by other drivers, like r600g.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-09-20 09:38:18 +10:00
Henri Verbeet f1cf04dbc0 r600g: fix exports_ps to export a number not a mask. 2010-09-20 09:30:21 +10:00
Jakob Bornecrantz b83156d42f scons: Link against talloc in the Gallium DRI drivers 2010-09-20 00:03:58 +02:00
Jakob Bornecrantz 00272e9e09 rbug: Add function to get opcode name string 2010-09-20 00:03:58 +02:00
Jakob Bornecrantz 7faa37adf8 rbug: Cast opcode to corrent int size 2010-09-20 00:03:58 +02:00
Henri Verbeet 1934ade183 Revert "r600g: Flush upload buffers before draws instead of before flushes."
This reverts commit a1d9a58b82.
Flushing the upload buffers on draw is wrong, uploads aren't supposed to
cause flushes in the first place. The real issue was
radeon_bo_pb_map_internal() not respecting PB_USAGE_UNSYNCHRONIZED.
2010-09-19 23:03:03 +02:00
Henri Verbeet 0f9181811f r600g: Respect PB_USAGE_UNSYNCHRONIZED in radeon_bo_pb_map_internal(). 2010-09-19 23:03:03 +02:00
Tilman Sauerbeck d323118c3e gallium/docs: Fixed a typo in the SCS opcode description.
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
2010-09-19 22:13:42 +02:00
Luca Barbieri a01578c84f auxiliary: fix depth-only and stencil-only clears
Depth-only and stencil-only clears should mask out depth/stencil from the
output, mask out stencil/input from input, and OR or ADD them together.

However, due to a typo they were being ANDed, resulting in zeroing the buffer.
2010-09-19 21:52:02 +02:00
Henri Verbeet affd46cc2b r600g: Buffer object maps imply a wait.
Unless e.g. PB_USAGE_DONTBLOCK or PB_USAGE_UNSYNCHRONIZED would be specified.
2010-09-19 19:43:05 +02:00
Henri Verbeet de9c8015eb r600g: Remove a redundant flush in r600_texture_transfer_map().
radeon_ws_bo_map() will already take care of that if needed.
2010-09-19 19:43:05 +02:00