[Mesa-dev] [PATCH 0/3] etnaviv: Support large shaders on GC3000
Wladimir J. van der Laan
laanwj at gmail.com
Mon Jul 24 08:28:14 UTC 2017
This patch adds support for large shaders on GC3000. For example the "terrain"
glmark benchmark with a large fragment shader will work after this.
If the GPU supports ICACHE, shaders larger than the available state area will
be uploaded to a bo of their own and instructed to be loaded from memory on
demand. Small shaders will be uploaded in the usual way. This mimics the
behavior of the blob.
On GPUs that don't support ICACHE, this patch should make no difference.
Wladimir J. van der Laan (3):
etnaviv: Update headers from rnndb
etnaviv: Unified uniforms support
etnaviv: Implement ICACHE
src/gallium/drivers/etnaviv/etnaviv_compiler.c | 3 +-
src/gallium/drivers/etnaviv/etnaviv_compiler.h | 5 ++
src/gallium/drivers/etnaviv/etnaviv_emit.c | 71 +++++++++++++++++++-------
src/gallium/drivers/etnaviv/etnaviv_internal.h | 10 ++++
src/gallium/drivers/etnaviv/etnaviv_screen.c | 19 ++++++-
src/gallium/drivers/etnaviv/etnaviv_shader.c | 45 +++++++++++++++-
src/gallium/drivers/etnaviv/hw/state_3d.xml.h | 14 +++--
7 files changed, 140 insertions(+), 27 deletions(-)
--
2.7.4
More information about the mesa-dev
mailing list