summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2016-03-17 15:50:00 +0100
committerHans de Goede <hdegoede@redhat.com>2016-04-20 13:46:03 +0200
commit61d52a5fb9379eede3bf68b011f9477176341ee9 (patch)
tree8e6ba90aaf4bad9396517385f7ea9b5edf8095bd /src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp
parentf02f4d09cebe6a5f73331e75e0484865f605e108 (diff)
downloadexternal_mesa3d-61d52a5fb9379eede3bf68b011f9477176341ee9.zip
external_mesa3d-61d52a5fb9379eede3bf68b011f9477176341ee9.tar.gz
external_mesa3d-61d52a5fb9379eede3bf68b011f9477176341ee9.tar.bz2
nouveau: codegen: Use FILE_MEMORY_BUFFER for buffers
Some of the lowering steps we currently do for FILE_MEMORY_GLOBAL only apply to buffers, making it impossible to use FILE_MEMORY_GLOBAL for OpenCL global buffers. This commits changes the buffer code to use FILE_MEMORY_BUFFER at the ir_from_tgsi and lowering steps, freeing use of FILE_MEMORY_GLOBAL for use with OpenCL global buffers. Note that after lowering buffer accesses use the FILE_MEMORY_GLOBAL register file. Tested with piglet on a gf119 and a gk107: ./piglit run -o shader -t '.*arb_shader_storage_buffer_object.*' results/shader [9/9] pass: 9 / ./piglit run -o shader -t '.*arb_compute_shader.*' results/shader [20/20] skip: 4, pass: 16 | Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Diffstat (limited to 'src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp')
-rw-r--r--src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp
index a03afa8..9e1e7bf 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp
@@ -248,6 +248,7 @@ TargetNVC0::getFileSize(DataFile file) const
case FILE_MEMORY_CONST: return 65536;
case FILE_SHADER_INPUT: return 0x400;
case FILE_SHADER_OUTPUT: return 0x400;
+ case FILE_MEMORY_BUFFER: return 0xffffffff;
case FILE_MEMORY_GLOBAL: return 0xffffffff;
case FILE_MEMORY_SHARED: return 16 << 10;
case FILE_MEMORY_LOCAL: return 48 << 10;