diff options
author | Hans de Goede <hdegoede@redhat.com> | 2016-03-17 15:50:00 +0100 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2016-04-20 13:46:03 +0200 |
commit | 61d52a5fb9379eede3bf68b011f9477176341ee9 (patch) | |
tree | 8e6ba90aaf4bad9396517385f7ea9b5edf8095bd /src/gallium/drivers/nouveau/codegen/nv50_ir_target_nvc0.cpp | |
parent | f02f4d09cebe6a5f73331e75e0484865f605e108 (diff) | |
download | external_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.cpp | 1 |
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; |