Marek Olšák
8449a4772a
r300g: fix texture border for 16-bits-per-channel formats
...
This is kinda hacky, but it's hard to come up with a generic solution for
all formats when only a few are used in practice (I mostly get B8G8R8*8).
2010-10-24 23:43:13 +02:00
Dave Airlie
a20c2347a0
r600g: drop more common state handling code
2010-10-24 13:04:44 +10:00
Tilman Sauerbeck
f4a2c62af5
r600g: Also clear bc data when we're destroying a shader.
...
[airlied: remove unused vars]
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-24 12:56:35 +10:00
Tilman Sauerbeck
ccb9be1056
r600g: Added r600_pipe_shader_destroy().
...
Not yet complete.
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-24 12:55:18 +10:00
Dave Airlie
9612b482e2
r600g: merge more of the common r600/evergreen state handling
2010-10-24 12:53:50 +10:00
Tilman Sauerbeck
9f9d24c89a
r600g: Fixed r600_vertex_element leak.
...
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-10-24 12:44:56 +10:00
Brian Paul
d8740b77ac
softpipe: remove >32bpp color restriction
...
The comment was out of date. The tile cache does handle >32-bit colors.
2010-10-23 10:27:21 -06:00
Brian Paul
4250882ccf
softpipe: added some texture sample debug code (disabled)
2010-10-23 10:19:30 -06:00
Marek Olšák
469907d597
r300g: say no to PIPE_CAP_STREAM_OUTPUT and PIPE_CAP_PRIMITIVE_RESTART
2010-10-22 20:34:28 +02:00
Marek Olšák
1d96ad67bc
r300g: do not print get_param errors in non-debug build
2010-10-22 20:34:27 +02:00
Brian Paul
67f6a4a8c4
galahad: silence warnings
2010-10-22 08:58:35 -06:00
Brian Paul
6692ed6f03
llvmpipe: enable primitive restart
2010-10-21 19:03:38 -06:00
Brian Paul
27d3bab055
softpipe: enable primitive restart
2010-10-21 19:03:38 -06:00
Dave Airlie
f39e6c9c81
r600g: start splitting out common code from eg/r600.
...
no point duplicating code that doesn't touch hw, also make it easier
to spot mistakes
2010-10-21 19:58:09 +10:00
Dave Airlie
e68c83a5a0
r600g: initial translate state support
2010-10-21 19:58:08 +10:00
Vinson Lee
abc5435f22
llvmpipe: Remove unnecessary header.
2010-10-21 01:44:48 -07:00
Dave Airlie
089aa0ba24
r600g: add texture tiling enable under a debug option.
...
At the moment you need kernel patches to have texture tiling work
with the kernel CS checker, so once they are upstream and the drm version
is bumped we can make this enable flip the other way most likely.
2010-10-21 13:40:45 +10:00
Dave Airlie
cdd14668b6
r600g: add texture tiling alignment support.
...
this sets things up to align stride/height with tile sizes,
it also adds support for the 2D/1D array mode cross over point.
2010-10-21 13:37:54 +10:00
Dave Airlie
92ed84d115
r600g: introduce a per-driver resource flag for transfers.
...
this is to be used to decide not to tile a surface being used for transfers.
2010-10-21 13:36:01 +10:00
Dave Airlie
91e513044d
r600g: add r600 surface to store the aligned height.
...
we need to know the aligned height when binding the surface to cb/zb,
not the gallium surface height.
2010-10-21 13:33:00 +10:00
Dave Airlie
388ce31baa
r600g: start adding hooks for aligning width/height for tiles.
2010-10-21 13:32:08 +10:00
Dave Airlie
ea5aab85fd
r600g: move to per-miplevel array mode.
...
Since the hw transitions from 2D->1D sampling below the 2D macrotile
size we need to keep track of the array mode per level so we can
render to it using the CB.
2010-10-21 13:32:08 +10:00
Dave Airlie
206fbd9640
r600g: all non-0 mipmap levels need to be w/h aligned to POT.
...
this adds a new minify function to the driver to ensure this.
2010-10-21 13:20:14 +10:00
Brian Paul
f36346c116
llvmpipe/draw: always enable LLVMAddInstructionCombiningPass()
...
We were working around an LLVM 2.5 bug but we're using LLVM 2.6 or later now.
This basically reverts commit baddcbc522 .
This fixes the piglit bug/tri-tex-crash.c failure.
2010-10-20 14:49:07 -06:00
Vinson Lee
89c26866f0
r600g: Ensure r600_src is initialized in tgsi_exp function.
...
Silences these GCC warnings.
r600_shader.c: In function 'tgsi_exp':
r600_shader.c:2339: warning: 'r600_src[0].rel' is used uninitialized in this function
r600_shader.c:2339: warning: 'r600_src[0].abs' is used uninitialized in this function
r600_shader.c:2339: warning: 'r600_src[0].neg' is used uninitialized in this function
r600_shader.c:2339: warning: 'r600_src[0].chan' is used uninitialized in this function
r600_shader.c:2339: warning: 'r600_src[0].sel' is used uninitialized in this function
2010-10-20 12:44:08 -07:00
Vinson Lee
36dde032a4
llvmpipe: Initialize variable.
2010-10-19 10:14:11 -07:00
Vinson Lee
22725eb3e8
llvmpipe: Initialize state variable in debug_bin function.
2010-10-19 10:02:28 -07:00
Tom Stellard
f822cc22f2
r300g: Add new debug option for logging vertex/fragment program stats
2010-10-18 20:51:05 -07:00
José Fonseca
f37b114dc3
llvmpipe: Don't test rounding of x.5 numbers.
...
SSE4.1 has different rules, and so far this doesn't seem to cause any
problems with conformance test suites.
2010-10-18 09:35:21 -07:00
Brian Paul
01e0aaefcc
llvmpipe: remove lp_setup_coef*.c files from Makefile
2010-10-18 07:59:02 -06:00
Dave Airlie
8a74f7422b
r600g: retrieve tiling info from kernel for shared buffers.
...
we need to know if the back is tiled so we can blit from it properly.
2010-10-18 13:46:42 +10:00
Dave Airlie
375613afe3
r600g: fix transfer function for tiling.
...
this makes readback with tiled back work better.
2010-10-18 13:46:42 +10:00
Dave Airlie
c61b97d504
r600g: attempt to cleanup depth blit
...
cleanup what I'm nearly sure is unnecessary work in the depth blit code.
2010-10-18 13:46:25 +10:00
Dave Airlie
21c6459dfb
r600g: depth needs to bound to ds
2010-10-18 13:39:55 +10:00
Dave Airlie
69f8eebe72
r600g: fix typo in tiling setup cb code.
2010-10-18 13:39:55 +10:00
Dave Airlie
a1b7333c07
r600g: do proper tracking of views/samplers.
...
we need to do pretty much what r300g does in for this, this fixes some
issues seen while working on tiling.
2010-10-18 13:39:54 +10:00
Keith Whitwell
9da17fed2e
llvmpipe: remove unused arg from jit_setup_tri function
2010-10-17 19:23:40 -07:00
Keith Whitwell
75799b8d02
llvmpipe: remove unused file
2010-10-17 19:11:47 -07:00
Keith Whitwell
0072acd447
Merge remote branch 'origin/master' into lp-setup-llvm
...
Conflicts:
src/gallium/drivers/llvmpipe/lp_setup_coef.c
src/gallium/drivers/llvmpipe/lp_setup_coef.h
src/gallium/drivers/llvmpipe/lp_setup_coef_intrin.c
src/gallium/drivers/llvmpipe/lp_setup_point.c
src/gallium/drivers/llvmpipe/lp_setup_tri.c
src/gallium/drivers/llvmpipe/lp_state_derived.c
src/gallium/drivers/llvmpipe/lp_state_fs.h
2010-10-17 19:09:42 -07:00
Keith Whitwell
ca2b2ac131
llvmpipe: fail cleanly on malloc failure in lp_setup_alloc_triangle
2010-10-17 18:48:11 -07:00
Keith Whitwell
543fb77dde
llvmpipe: remove setup fallback path
2010-10-17 18:29:28 -07:00
Dave Airlie
5b966f58e3
r600g: set tiling bits in hw state
2010-10-18 09:25:22 +10:00
Dave Airlie
7b3fa03883
r600g: get tiling info from kernel
2010-10-18 09:25:22 +10:00
Dave Airlie
e8e20313af
r600g: add defines for tiling
2010-10-18 09:25:22 +10:00
Dave Airlie
82114ac02a
r600g: switch to a common formats.h file since they are in different regs
2010-10-18 09:13:46 +10:00
Vinson Lee
c9d297162a
llvmpipe: Return non-zero exit code for lp_test_round failures.
2010-10-17 14:09:53 -07:00
José Fonseca
4afad7d3ed
llvmpipe: Initialize bld ctx via lp_build_context_init instead of ad-hoc and broken code.
2010-10-17 10:15:15 -07:00
José Fonseca
a0add0446c
llvmpipe: Fix bad refactoring.
...
'i' and 'chan' have random values here, which could cause a buffer
overflow in debug builds, if chan > 4.
2010-10-17 09:58:04 -07:00
José Fonseca
709699d2e2
llvmpipe: Ensure z_shift and z_width is initialized.
2010-10-17 07:45:08 -07:00
José Fonseca
914b0d34e8
llvmpipe: Fix depth-stencil regression.
...
If stencil is enabled then we need to load the z_dst, even if depth
testing is disabled.
This fixes reflect mesa demo.
2010-10-17 07:22:34 -07:00