| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
Relative addressing of constant buffers can't work properly through the
kcache, since you can only address within the currently locked kcache window.
Instead, this patch binds the constant buffer as a shader resource, and then
explicitly fetches the constant using a vertex fetch with fetch type
VTX_FETCH_NO_INDEX_OFFSET from the shader. There's probably still some room
for improvement, doing the fetch right before the instruction that needs the
value may not be quite optimal for example.
|
| |
|
| |
|
|
|
|
| |
This allows them to be used for VS or PS buffer resources as well.
|
|
|
|
|
| |
These are practically unused, only the vs_resource array is being abused for
fetch shader resources.
|
| |
|
|
|
|
| |
r600_shader_from_tgsi().
|
|
|
|
|
|
| |
The r600_bc_alu_src structure is used in two different ways, as a vector and
for the individual channels of that same vector. This is somewhat fragile,
and probably confusing.
|
|
|
|
|
| |
This is much easier to work with, and allows use to get rid of some of the
literal handling hacks.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
If the client hasn't done the initial wl_display_iterate() at the time
we initialize the display, we have to do that in platform_wayland.c.
Make sure we detect that correctly instead of dup()ing fd=0, and use
the sync callback to make sure we don't wait forever for authorization that
won't happen.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
MESA_drm_image isnt limited to drm platform,
others can enable the extension too.
|
| |
|
|
|
|
|
| |
This library is required and defined by wayland for
EGL implementations supporting wayland.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
This code has originally matured in r300g and was ported to r600g several
times. It was obvious it's a code duplication.
See also comments in the header file.
|
| |
|
|
|
|
|
| |
We don't have to unmap and recreate the upload buffer when a flush occurs.
This should also prevent buffer allocations from failing.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This uses the surface format to set the CB up not the underlying texture
format, since these can and do differ.
Fixes piglit fbo-srgb.
|
|
|
|
|
|
|
|
|
|
|
| |
The scheduler and the register allocator are not good enough yet to deal
with the effects of the register rename pass. This was causing a 50%
performance drop in Lightsmark. The pass can be re-enabled once the
scheduler and the register allocator are more mature. r300 and r400
still need this pass, because it prevents a lot of shaders from using
too many texture indirections.
NOTE: This is a candidate for the 7.10 branch.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds i965 support for GL_EXT_framebuffer_sRGB, it introduces a new
constant to say that the driver can support sRGB enabled FBOs since enabling
the extension doesn't mean the driver can actually support sRGB.
Also adds the suggested state flush in the core code suggested by Brian.
fix the ARB_fbo color encoding.
Signed-off-by: Dave Airlie <[email protected]>
|
|
|
|
|
|
|
|
|
| |
Querying index zero is not an error in OpenGL ES 2.0.
Querying an index larger than the value returned by
GL_MAX_VERTEX_ATTRIBS is an error in all APIs.
Fixes bugzilla #32375.
|
|
|
|
|
|
| |
ES requires that a vertex shader and a fragment shader be present.
Fixes bugzilla #32214.
|
|
|
|
| |
Fixes SCons build.
|
|
|
|
| |
We pull the draw regions right out of the renderbuffers these days.
|
|
|
|
|
| |
There's way more interesting info in INTEL_DEBUG=state if you could find
it among the state size checks.
|
|
|
|
| |
These are already stripped by opt_constant_folding.cpp.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This patch cleans up many of the extra copies in GLSL IR introduced by
i965's scalarizing passes. It doesn't result in a statistically
significant performance difference on nexuiz high settings (n=3) or my
demo (n=10), due to brw_fs.cpp's register coalescing covering most of
those extra moves anyway. However, it does make the debug of wine's
GLSL shaders much more tractable, and reduces instruction count of
glsl-fs-convolution-2 from 376 to 288.
|
| |
|
|
|
|
|
| |
Since we never bind the actual DB to the CB/texture only the flushed one
we don't need to track the tile type at the moment.
|
| |
|
|
|
|
|
|
| |
The type of u_get_transfer_vtbl of the usage argument in u_transfer.h is
unsigned and not enum pipe_transfer_usage. This patch changes the type
of usage to unsigned to match the prototype in the header file.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Standard library functions in C++ are in the std namespace. When using
C++-style header files for the standard library, some compilers, such as
Sun Studio, provide symbols only for the std namespace and not for the
global namespace.
This patch adds using statements for standard library functions. Another
option could have been to prepend standard library function calls with
'std::'.
This patch fixes several compilation errors with Sun Studio.
|
|
|
|
|
|
| |
this fixes the mipmap tests with tiling forced on.
Signed-off-by: Dave Airlie <[email protected]>
|
|
|
|
|
|
| |
Since these textures still have the depth bit set.
Signed-off-by: Dave Airlie <[email protected]>
|