| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This fixes the glReadPixels() regression for reading from the front/back
color buffers.
Note, we only allow one mapping of an XImage/Pixmap renderbuffer
at any time. That might need to be revisited in the future.
|
|
|
|
|
|
|
|
|
| |
Commit a73c65c5342bf41fa0dfefe7daa9197ce6a11db4 had a typo which
accidentally enabled the workaround-free Gen7 code on Gen6.
Fixes GPU hangs in anything using pow() or integer division/modulus.
Signed-off-by: Kenneth Graunke <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
According to the documentation, Ivybridge's math instruction works in
SIMD16 mode for the fragment shader, and no longer forbids align16 mode
for the vertex shader.
The documentation claims that SIMD16 mode isn't supported for INT DIV,
but empirical evidence shows that it works fine. Presumably the note
is trying to warn us that the variant that returns both quotient and
remainder in (dst, dst + 1) doesn't work in SIMD16 mode since dst + 1
would be sechalf(dst), trashing half your results. Since we don't use
that variant, we don't care and can just enable SIMD16 everywhere.
The documentation also still claims that source modifiers and
conditional modifiers aren't supported, but empirical evidence and
study of the simulator both show that they work just fine.
Goodbye workarounds. Math just works now.
Signed-off-by: Kenneth Graunke <[email protected]>
Reviewed-by: Paul Berry <[email protected]>
|
|
|
|
| |
Signed-off-by: Dave Airlie <[email protected]>
|
|
|
|
|
|
| |
Makes clang happier.
Signed-off-by: Kenneth Graunke <[email protected]>
|
|
|
|
| |
To smooth minor diff between dri_util & drisw_util
|
| |
|
| |
|
| |
|
|
|
|
| |
This is to reorder as screen/context/drawable similar to drisw_util
|
| |
|
|
|
|
| |
__driUtilMessage seems to have fallen out of favor and is only used by xmlconfig.c now
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Also drop DriverAPI field, this is a static symbol and I don't see why it
should be accessed through __DRIscreenRec
|
|
|
|
| |
I dropped the comments because they don't add much.
|
| |
|
|
|
|
| |
Signed-off-by: Dave Airlie <[email protected]>
|
|
|
|
|
|
| |
This is needed to do proper renderbuffer operation on mipmaps.
Signed-off-by: Dave Airlie <[email protected]>
|
|
|
|
|
|
| |
This just uses the base class copies.
Signed-off-by: Dave Airlie <[email protected]>
|
|
|
|
|
|
|
| |
The readpixels microbenchmark in mesa-demos goes from 47Mpix/sec at
1000x1000 to 450Mpix/sec. The 10x10 sizes stay about the same.
Reviewed-by: Brian Paul <[email protected]>
|
|
|
|
| |
Reviewed-by: Brian Paul <[email protected]>
|
|
|
|
|
|
|
|
| |
Renderbuffer mapping handles flushing the batchbuffer if required, so
all we need to do is make sure any pending rendering has reached the
batchbuffer.
Reviewed-by: Brian Paul <[email protected]>
|
|
|
|
|
|
|
| |
There doesn't appear to be any particular reason for this -- it's not
like the width is changing between the deref and the use.
Reviewed-by: Brian Paul <[email protected]>
|
|
|
|
| |
Fixes Coverity uninitialized scalar variable defect.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
i965's MUL instruction can't take an immediate value as its first
argument. So normally, if constant propagation wants to propagate a
constant into the first argument of a MUL instruction, it swaps the
order of the two arguments.
This doesn't work for 32-bit integer (and unsigned integer)
multiplies, because the MUL operation is asymmetric in that case (it
multiplies 16 bits of one operand by 32 bits of the other).
Fixes piglit tests {vs,fs}-multiply-const-{ivec4,uvec4}.
Reviewed-by: Eric Anholt <[email protected]>
|
|
|
|
|
|
| |
Fixes gcc set-but-unused-variable warning.
Reviewed-by: Alex Deucher <[email protected]>
|
|
|
|
|
|
| |
On a piglit run vs 7.11 this fixes 23 tests.
Signed-off-by: Dave Airlie <[email protected]>
|
|
|
|
|
|
|
|
|
| |
3-bit fields are used store texture target in several places. That will fail
when TEXTURE_EXTERNAL_INDEX, which happends to be the 9th texture target, is
added. Make them 4-bit fields.
Reviewed-by: Brian Paul <[email protected]>
Acked-by: Jakob Bornecrantz <[email protected]>
|
| |
|
| |
|
|
|
|
| |
Signed-off-by: José Fonseca <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a vertex shader input attribute is declared with an integral type
(e.g. ivec4), we need to ensure that the generated vertex shader code
addresses the vertex attribute register using the proper register
type. (Previously, we assumed all vertex shader input attributes were
floating-point).
In addition, when uploading vertex data that was specified with
VertexAttribIPointer, we need to instruct the vertex fetch unit to
convert the data to signed or unsigned int, rather than float. And
when filling in the implied w=1 on a vector with less than 4
components, we need to fill it in with the integer representation of 1
rather than the floating-point representation of 1.
Fixes piglit tests vs-attrib-{ivec4,uvec4}-precision.
Reviewed-by: Kenneth Graunke <[email protected]>
|
| |
|
| |
|
| |
|
|
|
|
| |
They are only used by the r200 driver now.
|
|
|
|
|
| |
With DRI2, textures are always resident and using the DRI texmem helper
here is broken anyway, since nothing else uses it.
|
| |
|
|
|
|
| |
drirenderbuffer.[ch] is going bye-bye.
|
| |
|
| |
|
| |
|
|
|
|
| |
DRI2 is always enabled now.
|
| |
|
| |
|