Mesa (master): gallium: add PIPE_BIND_COMMAND_ARGS_BUFFER

Marek Olšák mareko at kemper.freedesktop.org
Tue Jul 1 22:47:29 UTC 2014


Module: Mesa
Branch: master
Commit: a27b3582a60ac2be2b1d6594b042d2bb6438d81a
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a27b3582a60ac2be2b1d6594b042d2bb6438d81a

Author: Christoph Bumiller <e0425955 at student.tuwien.ac.at>
Date:   Fri Apr  5 14:29:35 2013 +0200

gallium: add PIPE_BIND_COMMAND_ARGS_BUFFER

Intended for use with GL_ARB_draw_indirect's DRAW_INDIRECT_BUFFER
target or for D3D11_RESOURCE_MISC_DRAWINDIRECT_ARGS.

---

 src/gallium/docs/source/screen.rst   |    3 +++
 src/gallium/include/pipe/p_defines.h |    1 +
 2 files changed, 4 insertions(+)

diff --git a/src/gallium/docs/source/screen.rst b/src/gallium/docs/source/screen.rst
index 5e01df5..40ad823 100644
--- a/src/gallium/docs/source/screen.rst
+++ b/src/gallium/docs/source/screen.rst
@@ -369,6 +369,9 @@ resources might be created and handled quite differently.
   bound to the graphics pipeline as a shader resource.
 * ``PIPE_BIND_COMPUTE_RESOURCE``: A buffer or texture that can be
   bound to the compute program as a shader resource.
+* ``PIPE_BIND_COMMAND_ARGS_BUFFER``: A buffer that may be sourced by the
+  GPU command processor. It can contain, for example, the arguments to
+  indirect draw calls.
 
 .. _pipe_usage:
 
diff --git a/src/gallium/include/pipe/p_defines.h b/src/gallium/include/pipe/p_defines.h
index 702bb0b..0c958cf 100644
--- a/src/gallium/include/pipe/p_defines.h
+++ b/src/gallium/include/pipe/p_defines.h
@@ -350,6 +350,7 @@ enum pipe_flush_flags {
 #define PIPE_BIND_GLOBAL               (1 << 18) /* set_global_binding */
 #define PIPE_BIND_SHADER_RESOURCE      (1 << 19) /* set_shader_resources */
 #define PIPE_BIND_COMPUTE_RESOURCE     (1 << 20) /* set_compute_resources */
+#define PIPE_BIND_COMMAND_ARGS_BUFFER  (1 << 21) /* pipe_draw_info.indirect */
 
 /* The first two flags above were previously part of the amorphous
  * TEXTURE_USAGE, most of which are now descriptions of the ways a




More information about the mesa-commit mailing list