Dave Airlie
42ebe3dfd9
mesa/st: add support for EXT_texture_swizzle.
...
This passes on r300g, the only bit I'm not really sure about is the handling
of the sampler_view in st_atom_texture.c, I unreference it there if the swizzle
value changes and I also have to create a new set of functions to create a new
one since the u_sampler.c ones don't handle swizzle so much.
adds r300g + softpipe enables, I think other drivers could pass easily enough.
Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-06-05 16:53:43 +10:00
Vinson Lee
f5b9ad9a7d
i915g: Rename winsys c file.
...
This was missed in commit e7f0f6bb72 .
Fixes i915g SCons build.
2010-06-04 16:19:08 -07:00
Brian Paul
4f067ada47
llvmpipe: new -s option to run single test
...
Put specific test code in the test_single() function and pass -s to
execute that code.
2010-06-04 17:01:24 -06:00
José Fonseca
be5a514d4e
llvmpipe: Do unswizzling in parallel when flushing for transfers.
2010-06-04 13:05:59 +01:00
Chia-I Wu
0cfb5ffe30
st/egl: Fix compiler warnings.
...
Forgot to stage this chunk in last commit.
2010-06-04 12:56:06 +08:00
Chia-I Wu
22c2e57cbb
st/egl: Move sw screen creation to native helper.
...
The code is shared by ximage and gdi backend.
2010-06-04 12:12:50 +08:00
Marek Olšák
8819421a3b
r600g: implement clear_{render_target, depth_stencil}, resource_copy_region
...
resource_copy_region uses a software fallback because it relies on texture
samplers which haven't been implemented yet.
2010-06-04 03:04:16 +02:00
Marek Olšák
7d0418d3dc
r600g: make blit functions static (private)
2010-06-04 03:04:16 +02:00
Marek Olšák
ffd0a2e215
r600g: use cast wrappers
2010-06-04 03:04:16 +02:00
Vinson Lee
42aad574f2
r600g: Move declaration before code.
...
Fixes SCons build.
2010-06-03 17:41:57 -07:00
Vinson Lee
1687ef2be6
util: Remove unnecessary header.
2010-06-03 17:30:55 -07:00
Vinson Lee
9cdcabbb2b
nv50: Remove unnecessary header.
2010-06-03 17:29:59 -07:00
Vinson Lee
16009b6a40
svga: Remove unnecessary header.
2010-06-03 17:29:30 -07:00
Vinson Lee
a52f577270
llvmpipe: Fix uninitialized variable on non-debug builds.
2010-06-03 17:24:22 -07:00
Bas Nieuwenhuizen
d6ba70c658
r600g: added code for depthtesting
...
- added code to configure the depth buffer and to set up depth testing.
2010-06-03 21:38:53 +02:00
Roland Scheidegger
c674ce5e3a
r600g: adapt to interface changes
...
r600g should be able to handle separate depth stencil clears as well.
Also adapt surface_fill/copy stubs to new interface (not that it matters).
2010-06-03 17:46:47 +02:00
Roland Scheidegger
992382762a
Merge branch 'gallium-newclear'
...
Conflicts:
src/gallium/state_trackers/python/p_context.i
2010-06-03 17:46:14 +02:00
Roland Scheidegger
a6e5c6c000
gallium: rename clearRT / clearDS to clear_render_target / clear_depth_stencil
...
more consistent with rest of gallium naming conventions.
Also rename driver-internal names for these the same.
2010-06-03 16:33:25 +02:00
Jakob Bornecrantz
05863c4877
gallium: Don't depend directly on staging dir in Xorg template makefile
2010-06-01 10:30:27 +01:00
Brian Paul
b297b14d30
tgsi: we don't support indirect input/output registers in SSE codegen yet
...
Extend the check for indirect addressing of temp regs to include
input/output regs.
Fixes failure with piglit glsl-texcoord-array.shader_test test when using
SSE codegen.
2010-06-03 09:01:32 -06:00
Brian Paul
d4afee9202
tgsi: whitespace cleanup
2010-06-03 08:58:31 -06:00
Brian Paul
d18fb4822b
gallium: add interpolation parameter to simple shader functions
...
This lets us specify linear interpolation instead of perspective
interpolation for blit operations. Might be a bit faster.
2010-06-03 08:54:15 -06:00
Jakob Bornecrantz
35d75e4930
gallium: Don't always copy the dri driver to the staging dir
...
So something in the build keept updating the timestamp on the
staging directory causing us to always copy the library to it.
2010-06-01 09:41:01 +01:00
Jakob Bornecrantz
d212a4d414
gallium: Create a Xorg driver template Makefile
2010-06-01 09:41:00 +01:00
Brian Paul
6cc51b982e
util/u_debug: use MAX2 macro
2010-06-03 07:52:46 -06:00
José Fonseca
81862bbbc8
llvmpipe: Number shaders/variants for more reproducible function names in the IR.
2010-06-03 14:32:56 +01:00
José Fonseca
55948247eb
gallivm: Register the JIT engine with oprofile on debug/profile builds.
2010-06-03 14:32:56 +01:00
José Fonseca
ef81779850
gallivm: Factor out the quad derivative code into a single place. Fix ddy.
...
For ddy it should be (bottom - top).
2010-06-03 14:32:56 +01:00
Joakim Sindholt
9eb730a735
r300g: use util/u_debug
2010-06-03 13:45:05 +02:00
Joakim Sindholt
8413b92a6f
gallium: silence all debug_named_value related warnings
2010-06-03 13:45:05 +02:00
Joakim Sindholt
fbeab4cbce
util/u_debug: add description field to debug_named_value
2010-06-03 13:45:05 +02:00
Vinson Lee
d062d21416
scons: Handle Python OSError exception when missing libdrm_radeon.
...
Instead of crashing when libdrm_radeon is unavailable, the SCons build
just does not build r600g.
2010-06-03 00:08:22 -07:00
Marek Olšák
e0d72814be
r300g: set the minimum texture stride to 64 bytes on RS600, RS690, and RS740
...
I hope I've done it right. No way to test it here...
2010-06-03 03:46:34 +02:00
Brian Paul
14b7fdb8ac
gallivm: bump up LP_BUILD_FLOW_MAX_VARIABLES
...
Fixes failed assertion with piglit fbo-drawbuffers-fragcolor.c
See fd.o bug 28358.
With 8 color buffers + Z we need to declare 33 vars, at least.
2010-06-02 16:23:20 -06:00
José Fonseca
a33b5ef7d0
llvmpipe: Fix bad logic.
...
Courtesy of Vinson and coverity.
2010-06-02 21:32:49 +01:00
Vinson Lee
fae7bee475
llvmpipe: Remove unnecessary header.
2010-06-02 12:09:23 -07:00
José Fonseca
92cbbba7fb
llvmpipe: Fix typo in assert.
2010-06-02 20:00:30 +01:00
José Fonseca
ead58101f9
llvmpipe: Per quad interpolation.
...
First interpolate the 4 quads upper left corners, then sub-interpolate
each quad pixel. Do the perspective divide once per quad.
Saves some muls and reciprocates. But doesn't seem to make a
noticeable improvement.
It make the code simpler and more compact, so commiting anyway.
2010-06-02 18:43:35 +01:00
José Fonseca
5871b7ebc9
llvmpipe: Minor cleanup to the interpolator.
2010-06-02 16:09:21 +01:00
José Fonseca
952d188c3c
gallivm: Add a lp_build_const_elem().
2010-06-02 16:00:40 +01:00
José Fonseca
21a6bf8624
llvmpipe: Store often used LLVM types in the lp_build_context.
2010-06-02 16:00:15 +01:00
José Fonseca
baf4393105
gallivm: Zero min_lod and max_lod when only one view is selected and min/mag filter are equal.
2010-06-02 13:24:26 +01:00
José Fonseca
804e76ac4f
gallivm: Make lp_build_sample_wrap_int usage more accurate.
...
Fixes mesa texwrap demo border with GL_CLAMP.
2010-06-02 13:24:26 +01:00
José Fonseca
a37de72967
gallivm: Don't use reciprocate in lp_build_sample_wrap_linear().
...
Always clamp the scaled coordinates.
2010-06-02 13:24:26 +01:00
José Fonseca
6463dcbc01
gallivm: Avoid fp arithmetic in lp_build_sample_wrap_nearest().
2010-06-02 13:24:25 +01:00
José Fonseca
e3d3f30440
gallivm: Don't use lp_build_sample_wrap_nearest()
...
Always clamp with scaled coordinates.
2010-06-02 13:24:25 +01:00
José Fonseca
147dc2354c
llvmpipe: Centralize all position interpolation in lp_bld_interp.c.
2010-06-02 13:24:25 +01:00
Marek Olšák
53beea574f
r300g: use the stored GEM domain in add_buffer/write_reloc
...
I admit blitting to/from GTT is actually enforced in this commit,
texture transfers are now damned fast!
2010-06-02 07:09:51 +02:00
Marek Olšák
b6b76cbb20
r300g: store the GEM domain in buffer and texture structs
2010-06-02 07:01:08 +02:00
Marek Olšák
bb45a15168
r300g: use r300_buffer_domain everywhere
2010-06-02 06:26:15 +02:00