Brian Paul
a50c5f8d24
svga: fix incorrect memcpy src in svga_buffer_upload_piecewise()
...
As we march over the source buffer we're uploading in pieces, we
need to memcpy from the current offset, not the start of the buffer.
Fixes graphical corruption when drawing very large vertex buffers.
Cc: "9.2" <mesa-stable@lists.freedesktop.org>
Reviewed-by: Matthew McClure <mcclurem@vmware.com>
2013-10-04 10:25:37 -06:00
Matthew McClure
d164d50a85
util: when packing depth values, round to nearest.
...
This patch adds the lrint, lrintf, llrint, and llrintf rounding utility
functions. When packing unorm depth values, we will round to nearest.
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
2013-10-04 10:55:51 +01:00
Tom Stellard
b280516e11
radeonsi/compute: Fix segfault caused by recent refactoring
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2013-10-03 17:29:54 -07:00
Brian Paul
b181be6266
radeonsi: Fix build
...
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>
https://bugs.freedesktop.org/show_bug.cgi?id=70106
2013-10-03 17:29:42 -07:00
Brian Paul
99a471c67b
radeonsi/compute: fix bind_compute_sampler_states() breakage
...
Remove the assignment and the no-op function.
2013-10-03 17:32:40 -06:00
Paul Berry
800610f9eb
i965/fs: Improve accuracy of dFdy() to match dFdx().
...
Previously, we computed dFdy() using the following instruction:
add(8) dst<1>F src<4,4,0)F -src.2<4,4,0>F { align1 1Q }
That had the disadvantage that it computed the same value for all 4
pixels of a 2x2 subspan, which meant that it was less accurate than
dFdx(). This patch changes it to the following instruction when
c->key.high_quality_derivatives is set:
add(8) dst<1>F src<4,4,1>.xyxyF -src<4,4,1>.zwzwF { align16 1Q }
This gives it comparable accuracy to dFdx().
Unfortunately, align16 instructions can't be compressed, so in SIMD16
shaders, instead of emitting this instruction:
add(16) dst<1>F src<4,4,1>.xyxyF -src<4,4,1>.zwzwF { align16 1H }
We need to unroll to two instructions:
add(8) dst<1>F src<4,4,1>.xyxyF -src<4,4,1>.zwzwF { align16 1Q }
add(8) (dst+1)<1>F (src+1)<4,4,1>.xyxyF -(src+1)<4,4,1>.zwzwF { align16 2Q }
Fixes piglit test spec/glsl-1.10/execution/fs-dfdy-accuracy.
Acked-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Eric Anholt <eric@anholt.net>
2013-10-03 13:49:15 -07:00
Brian Paul
9267565ee4
gallium/tests: fix SHADER typo
2013-10-03 14:24:55 -06:00
Emil Velikov
13895abd86
gallium-egl: use standard variable types over EGLBoolean/EGLint
...
The inferface/prototype in native_wayland_bufmgr.h uses boolean/int, as
well as the rest of the file. Convert to improve consistency and to
prevent gcc compiler warnings due to type miss-match.
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
2013-10-03 14:05:29 -06:00
Brian Paul
379deaf5c6
gallium: remove old bind_*_sampler_states() functions
...
The new bind_sampler_states() function takes a shader argument to
specify the shader stage.
2013-10-03 14:05:29 -06:00
Brian Paul
55e81b06e7
gallium/docs: update bind_sampler_states() documentation
2013-10-03 14:05:28 -06:00
Brian Paul
1e2fbf2657
cso: make sure all sampler states are set/cleared
2013-10-03 14:05:28 -06:00
Brian Paul
7d7a9714d2
freedreno: use new bind_sampler_states() function
2013-10-03 14:05:28 -06:00
Brian Paul
88b17a15f3
svga: don't hook in old bind_fragment_sampler_states() functions
2013-10-03 14:05:28 -06:00
Brian Paul
27c054edf0
radeon: don't use old bind_vertex/fragment_sampler_states() hooks
2013-10-03 14:05:28 -06:00
Brian Paul
1e8d3eb08d
i915g: remove old bind_vertex/fragment_sampler_states() hooks
2013-10-03 14:05:28 -06:00
Brian Paul
edd9af675c
noop: remove old bind_*_sampler_states() functions
2013-10-03 14:05:28 -06:00
Brian Paul
f233ee0cd6
galahad: remove old bind_*_sampler_states() functions
2013-10-03 14:05:28 -06:00
Brian Paul
d0520d5bf6
vl: remove old bind_fragment_sampler_states() calls
2013-10-03 14:05:28 -06:00
Brian Paul
3925e521d6
util: remove old bind_fragment_sampler_states() calls from blitter code
2013-10-03 14:05:28 -06:00
Brian Paul
9fa6722a68
draw: remove use of old bind_fragment_sampler_states()
2013-10-03 14:05:28 -06:00
Brian Paul
7478236da9
nouveau: remove old bind_*_sampler_states() functions
2013-10-03 14:05:28 -06:00
Brian Paul
1446600d1a
cso: remove use of old bind_*_sampler_states() functions
2013-10-03 14:05:28 -06:00
Brian Paul
bcf7508a7d
rbug: remove old bind_*_sampler_states() functions
2013-10-03 14:05:28 -06:00
Brian Paul
22480c5b5b
identity: remove old bind_*_sampler_states() functions
2013-10-03 14:05:28 -06:00
Brian Paul
dd4816e3fd
trace: remove old bind_*_sampler_states() functions
2013-10-03 14:05:28 -06:00
Brian Paul
5807105ad7
ilo: don't hook up old bind_*_sampler_states() functions
2013-10-03 14:05:28 -06:00
Brian Paul
2d0effaa10
llvmpipe: remove old bind_*_sampler_states() functions
2013-10-03 14:05:27 -06:00
Brian Paul
6e640545ac
softpipe: remove old bind_*_sampler_states() functions
2013-10-03 14:05:27 -06:00
Brian Paul
93e6694f2c
clover: remove bind_compute_sampler_states() calls
2013-10-03 14:05:27 -06:00
Brian Paul
a5350a9f3e
gallium/tests: use pipe_context::bind_sampler_states()
2013-10-03 14:05:27 -06:00
Brian Paul
bc367ab54d
gallium/tools: update dump_state.py to use bind_sampler_states()
2013-10-03 14:05:27 -06:00
Brian Paul
3f0627c2ad
nouveau: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:27 -06:00
Brian Paul
550f9ee64c
softpipe: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
8280b29d7c
radeon: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
0de99d52b7
svga: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
6ef9fc791e
trace: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
e64112b1f9
rbug: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
bd1514849b
noop: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
c772338488
llvmpipe: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
41a9be70e4
ilo: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
9564ec8317
identity: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
aec11d48cf
i915g: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
e5d000c3f1
galahad: implement pipe_context::bind_sampler_states()
2013-10-03 14:05:26 -06:00
Brian Paul
4bdf7d3842
clover: use pipe_context::bind_sampler_states() if non-null
2013-10-03 14:05:26 -06:00
Brian Paul
96b9c09495
vl: use pipe_context::bind_sampler_states() if non-null
2013-10-03 14:05:26 -06:00
Brian Paul
bbc1fd8c80
util: use pipe_context::bind_sampler_states() if non-null
2013-10-03 14:05:26 -06:00
Brian Paul
27d500a844
draw: use pipe_context::bind_sampler_states() if non-null
2013-10-03 14:05:26 -06:00
Brian Paul
5cba8725a4
cso: use pipe_context::bind_sampler_states() if non-null
2013-10-03 14:05:26 -06:00
Brian Paul
755d788fe2
gallium: add pipe_context::bind_sampler_states()
...
The bind_vertex/geometry/fragment/compute_sampler_states() functions
will be replaced by a single functions.
2013-10-03 14:05:26 -06:00
Brian Paul
9b99451da2
r300g: rename r300_bind_sampler_states to r300_bind_fragment_sampler_states
2013-10-03 14:05:26 -06:00