Age | Commit message (Collapse) | Author |
|
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
|
|
|
|
|
|
Actually validate that the implementation supports the particular
shader target as well. Previously if a driver only supported vertex
shaders, for example, glCreateShaderObjectARB would gladly create a
fragment shader.
NOTE: this is a candidate for the 7.9 branch.
|
|
|
|
This really amounts to just using the return value from
link_function_calls. All the work was being done, but the result was
being ignored.
Fixes piglit test link-unresolved-funciton.
NOTE: this is a candidate for the 7.9 branch.
|
|
Completely initialize data passed to ir_constant constructor.
Fixes piglit glsl-mat-from-int-ctor-03 valgrind uninitialized value
error on softpipe.
|
|
Together with the previous commit, this generalize the benefits of
d2cf757f44f4ee5554243f3279483a25886d9927 to all depth formats, in
particular:
- simpler float -> 24unorm conversion
- avoid unsigned comparisons (not directly supported on SSE) by aligning
to the least significant bit
- avoid unecessary/repeated mask ANDing
Verified with trivial/tri-z that the exact same assembly is produced for
X8Z24.
|
|
|
|
The bug only happens on the AOS / fixed-pt path.
|
|
|
|
|
|
Z32_FLOAT uses <4 x float> as intermediate/destination type,
instead of <4 x i32>.
The necessary bitcasts got removed with commit
5b7eb868fde98388d80601d8dea39e679828f42f
Also use depth/stencil type and build contexts consistently, and
make the depth pointer argument a ordinary <i8 *>, to catch this
sort of issues in the future (and also to pave way for Z16 and
Z32_FLOAT_S8_X24 support).
|
|
|
|
|
|
|
|
|
|
__GLcontextModes is always only used as an implementation internal struct
at this point and we shouldn't install glcore.h anymore. Anything that
needs __GLcontextModes should just include the struct in its headers files
directly.
|
|
This is relying on lp_build_pack2 using the sse2 pack intrinsics which
handle clamping.
(Alternatively could have make it use lp_build_packs2 but it might
not even produce more efficient code than not using the fastpath
in the first place.)
|
|
|
|
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
|
|
|
|
at the moment depth copies are failing (piglit depth-level-clamp)
so use the fallback for now until get some time to investigate.
|
|
this changes size on 32/64 bit so is definitely no what you want to use here.
|
|
fixes segfaults
|
|
this mirror changes in r300g, bpt is kinda useless when it comes to some
of the non-simple texture formats.
|
|
|
|
|
|
just a cleanup step towards tiling
|
|
|
|
completely removed them.
|
|
this thing will be in the cache a lot, so having massive big struct
arrays inside it won't be helping anyone.
|
|
Fixes this GCC warning.
tdfx_texman.c: In function 'tdfxTMMoveOutTM_NoLock':
tdfx_texman.c:897: warning: unused variable 'shared'
|
|
also fixup framebuffer state copies to avoid bad state.
|
|
gallium calls them scissors, but r600 hw like r300 is better off using
cliprects to implement them as we can turn them on/off a lot easier.
|
|
|
|
Fixes this GCC warning.
r300_state.c: In function 'r300InvalidateState':
r300_state.c:2247: warning: 'hw_format' may be used uninitialized in this function
r300_state.c:2247: note: 'hw_format' was declared here
|
|
|
|
There's no apparent reason for the former to exist. And they didn't
even have the same value.
|
|
|
|
There seems to be no reason for it, so do same math for both
(except the scale mul, of course).
|
|
|
|
|
|
This adds proper support for the GL_ARB_shader_stencil_export extension
to the GLSL compiler. Thanks to Ian for pointing out where I need to add things.
|
|
|
|
|
|
If the pipe driver has shader stencil export we can accelerate DrawPixels
using it. It tries to pick an S8 texture and works its way to X24S8 and S8X24
if that isn't supported.
|
|
We need a texture to put the drawpixels stuff into, an S8 texture is less
memory/bandwidth than the 32-bit X24S8, but we might not be able to render
directly to an S8, so this lets us specify we won't be rendering to this
texture.
|