diff options
author | Henri Verbeet <hverbeet@gmail.com> | 2011-02-07 15:22:08 +0100 |
---|---|---|
committer | Henri Verbeet <hverbeet@gmail.com> | 2011-02-07 15:22:08 +0100 |
commit | 077c448d184799e0d9ec962013ec784c6a5c1807 (patch) | |
tree | c852d4467141004d07a1c593d09b160a0b3838da /src/gallium/winsys/r600/drm/r600_hw_context.c | |
parent | 871460eb149b9868e5750f13b8206e271743c4a2 (diff) |
r600g: Add support for relative addressing on constant buffers.
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.
Diffstat (limited to 'src/gallium/winsys/r600/drm/r600_hw_context.c')
0 files changed, 0 insertions, 0 deletions