Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(157)

Unified Diff: gpu/command_buffer/common/gles2_cmd_format_autogen.h

Issue 299043003: Adding bindless variants mailbox produce/consume (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: gpu/command_buffer/common/gles2_cmd_format_autogen.h
diff --git a/gpu/command_buffer/common/gles2_cmd_format_autogen.h b/gpu/command_buffer/common/gles2_cmd_format_autogen.h
index be63e8f73417c7b37a942d7fee6043b267059f44..8df7e4b320cc2e1067e289f8163258d63c86d205 100644
--- a/gpu/command_buffer/common/gles2_cmd_format_autogen.h
+++ b/gpu/command_buffer/common/gles2_cmd_format_autogen.h
@@ -9721,6 +9721,107 @@ COMPILE_ASSERT(offsetof(ProduceTextureCHROMIUMImmediate, header) == 0,
COMPILE_ASSERT(offsetof(ProduceTextureCHROMIUMImmediate, target) == 4,
OffsetOf_ProduceTextureCHROMIUMImmediate_target_not_4);
+struct ProduceTextureBindlessCHROMIUM {
+ typedef ProduceTextureBindlessCHROMIUM ValueType;
+ static const CommandId kCmdId = kProduceTextureBindlessCHROMIUM;
+ static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+ static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(1);
+
+ static uint32_t ComputeSize() {
+ return static_cast<uint32_t>(sizeof(ValueType)); // NOLINT
+ }
+
+ void SetHeader() { header.SetCmd<ValueType>(); }
+
+ void Init(GLuint _texture,
+ GLenum _target,
+ uint32_t _mailbox_shm_id,
+ uint32_t _mailbox_shm_offset) {
+ SetHeader();
+ texture = _texture;
+ target = _target;
+ mailbox_shm_id = _mailbox_shm_id;
+ mailbox_shm_offset = _mailbox_shm_offset;
+ }
+
+ void* Set(void* cmd,
+ GLuint _texture,
+ GLenum _target,
+ uint32_t _mailbox_shm_id,
+ uint32_t _mailbox_shm_offset) {
+ static_cast<ValueType*>(cmd)
+ ->Init(_texture, _target, _mailbox_shm_id, _mailbox_shm_offset);
+ return NextCmdAddress<ValueType>(cmd);
+ }
+
+ gpu::CommandHeader header;
+ uint32_t texture;
+ uint32_t target;
+ uint32_t mailbox_shm_id;
+ uint32_t mailbox_shm_offset;
+};
+
+COMPILE_ASSERT(sizeof(ProduceTextureBindlessCHROMIUM) == 20,
+ Sizeof_ProduceTextureBindlessCHROMIUM_is_not_20);
+COMPILE_ASSERT(offsetof(ProduceTextureBindlessCHROMIUM, header) == 0,
+ OffsetOf_ProduceTextureBindlessCHROMIUM_header_not_0);
+COMPILE_ASSERT(offsetof(ProduceTextureBindlessCHROMIUM, texture) == 4,
+ OffsetOf_ProduceTextureBindlessCHROMIUM_texture_not_4);
+COMPILE_ASSERT(offsetof(ProduceTextureBindlessCHROMIUM, target) == 8,
+ OffsetOf_ProduceTextureBindlessCHROMIUM_target_not_8);
+COMPILE_ASSERT(offsetof(ProduceTextureBindlessCHROMIUM, mailbox_shm_id) == 12,
+ OffsetOf_ProduceTextureBindlessCHROMIUM_mailbox_shm_id_not_12);
+COMPILE_ASSERT(
+ offsetof(ProduceTextureBindlessCHROMIUM, mailbox_shm_offset) == 16,
+ OffsetOf_ProduceTextureBindlessCHROMIUM_mailbox_shm_offset_not_16);
+
+struct ProduceTextureBindlessCHROMIUMImmediate {
+ typedef ProduceTextureBindlessCHROMIUMImmediate ValueType;
+ static const CommandId kCmdId = kProduceTextureBindlessCHROMIUMImmediate;
+ static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+ static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(1);
+
+ static uint32_t ComputeDataSize() {
+ return static_cast<uint32_t>(sizeof(GLbyte) * 64); // NOLINT
+ }
+
+ static uint32_t ComputeSize() {
+ return static_cast<uint32_t>(sizeof(ValueType) +
+ ComputeDataSize()); // NOLINT
+ }
+
+ void SetHeader() { header.SetCmdByTotalSize<ValueType>(ComputeSize()); }
+
+ void Init(GLuint _texture, GLenum _target, const GLbyte* _mailbox) {
+ SetHeader();
+ texture = _texture;
+ target = _target;
+ memcpy(ImmediateDataAddress(this), _mailbox, ComputeDataSize());
+ }
+
+ void* Set(void* cmd,
+ GLuint _texture,
+ GLenum _target,
+ const GLbyte* _mailbox) {
+ static_cast<ValueType*>(cmd)->Init(_texture, _target, _mailbox);
+ const uint32_t size = ComputeSize();
+ return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+ }
+
+ gpu::CommandHeader header;
+ uint32_t texture;
+ uint32_t target;
+};
+
+COMPILE_ASSERT(sizeof(ProduceTextureBindlessCHROMIUMImmediate) == 12,
+ Sizeof_ProduceTextureBindlessCHROMIUMImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(ProduceTextureBindlessCHROMIUMImmediate, header) == 0,
+ OffsetOf_ProduceTextureBindlessCHROMIUMImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(ProduceTextureBindlessCHROMIUMImmediate, texture) == 4,
+ OffsetOf_ProduceTextureBindlessCHROMIUMImmediate_texture_not_4);
+COMPILE_ASSERT(offsetof(ProduceTextureBindlessCHROMIUMImmediate, target) == 8,
+ OffsetOf_ProduceTextureBindlessCHROMIUMImmediate_target_not_8);
+
struct ConsumeTextureCHROMIUM {
typedef ConsumeTextureCHROMIUM ValueType;
static const CommandId kCmdId = kConsumeTextureCHROMIUM;
@@ -9808,6 +9909,110 @@ COMPILE_ASSERT(offsetof(ConsumeTextureCHROMIUMImmediate, header) == 0,
COMPILE_ASSERT(offsetof(ConsumeTextureCHROMIUMImmediate, target) == 4,
OffsetOf_ConsumeTextureCHROMIUMImmediate_target_not_4);
+struct CreateAndConsumeTextureCHROMIUM {
+ typedef CreateAndConsumeTextureCHROMIUM ValueType;
+ static const CommandId kCmdId = kCreateAndConsumeTextureCHROMIUM;
+ static const cmd::ArgFlags kArgFlags = cmd::kFixed;
+ static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(1);
+
+ static uint32_t ComputeSize() {
+ return static_cast<uint32_t>(sizeof(ValueType)); // NOLINT
+ }
+
+ void SetHeader() { header.SetCmd<ValueType>(); }
+
+ void Init(GLenum _target,
+ uint32_t _mailbox_shm_id,
+ uint32_t _mailbox_shm_offset,
+ uint32_t _client_id) {
+ SetHeader();
+ target = _target;
+ mailbox_shm_id = _mailbox_shm_id;
+ mailbox_shm_offset = _mailbox_shm_offset;
+ client_id = _client_id;
+ }
+
+ void* Set(void* cmd,
+ GLenum _target,
+ uint32_t _mailbox_shm_id,
+ uint32_t _mailbox_shm_offset,
+ uint32_t _client_id) {
+ static_cast<ValueType*>(cmd)
+ ->Init(_target, _mailbox_shm_id, _mailbox_shm_offset, _client_id);
+ return NextCmdAddress<ValueType>(cmd);
+ }
+
+ gpu::CommandHeader header;
+ uint32_t target;
+ uint32_t mailbox_shm_id;
+ uint32_t mailbox_shm_offset;
+ uint32_t client_id;
+};
+
+COMPILE_ASSERT(sizeof(CreateAndConsumeTextureCHROMIUM) == 20,
+ Sizeof_CreateAndConsumeTextureCHROMIUM_is_not_20);
+COMPILE_ASSERT(offsetof(CreateAndConsumeTextureCHROMIUM, header) == 0,
+ OffsetOf_CreateAndConsumeTextureCHROMIUM_header_not_0);
+COMPILE_ASSERT(offsetof(CreateAndConsumeTextureCHROMIUM, target) == 4,
+ OffsetOf_CreateAndConsumeTextureCHROMIUM_target_not_4);
+COMPILE_ASSERT(offsetof(CreateAndConsumeTextureCHROMIUM, mailbox_shm_id) == 8,
+ OffsetOf_CreateAndConsumeTextureCHROMIUM_mailbox_shm_id_not_8);
+COMPILE_ASSERT(
+ offsetof(CreateAndConsumeTextureCHROMIUM, mailbox_shm_offset) == 12,
+ OffsetOf_CreateAndConsumeTextureCHROMIUM_mailbox_shm_offset_not_12);
+COMPILE_ASSERT(offsetof(CreateAndConsumeTextureCHROMIUM, client_id) == 16,
+ OffsetOf_CreateAndConsumeTextureCHROMIUM_client_id_not_16);
+
+struct CreateAndConsumeTextureCHROMIUMImmediate {
+ typedef CreateAndConsumeTextureCHROMIUMImmediate ValueType;
+ static const CommandId kCmdId = kCreateAndConsumeTextureCHROMIUMImmediate;
+ static const cmd::ArgFlags kArgFlags = cmd::kAtLeastN;
+ static const uint8 cmd_flags = CMD_FLAG_SET_TRACE_LEVEL(1);
+
+ static uint32_t ComputeDataSize() {
+ return static_cast<uint32_t>(sizeof(GLbyte) * 64); // NOLINT
+ }
+
+ static uint32_t ComputeSize() {
+ return static_cast<uint32_t>(sizeof(ValueType) +
+ ComputeDataSize()); // NOLINT
+ }
+
+ void SetHeader(uint32_t size_in_bytes) {
+ header.SetCmdByTotalSize<ValueType>(size_in_bytes);
+ }
+
+ void Init(GLenum _target, uint32_t _client_id, const GLbyte* _mailbox) {
+ SetHeader(ComputeSize());
+ target = _target;
+ client_id = _client_id;
+ memcpy(ImmediateDataAddress(this), _mailbox, ComputeDataSize());
+ }
+
+ void* Set(void* cmd,
+ GLenum _target,
+ uint32_t _client_id,
+ const GLbyte* _mailbox) {
+ static_cast<ValueType*>(cmd)->Init(_target, _client_id, _mailbox);
+ const uint32_t size = ComputeSize();
+ return NextImmediateCmdAddressTotalSize<ValueType>(cmd, size);
+ }
+
+ gpu::CommandHeader header;
+ uint32_t target;
+ uint32_t client_id;
+};
+
+COMPILE_ASSERT(sizeof(CreateAndConsumeTextureCHROMIUMImmediate) == 12,
+ Sizeof_CreateAndConsumeTextureCHROMIUMImmediate_is_not_12);
+COMPILE_ASSERT(offsetof(CreateAndConsumeTextureCHROMIUMImmediate, header) == 0,
+ OffsetOf_CreateAndConsumeTextureCHROMIUMImmediate_header_not_0);
+COMPILE_ASSERT(offsetof(CreateAndConsumeTextureCHROMIUMImmediate, target) == 4,
+ OffsetOf_CreateAndConsumeTextureCHROMIUMImmediate_target_not_4);
+COMPILE_ASSERT(
+ offsetof(CreateAndConsumeTextureCHROMIUMImmediate, client_id) == 8,
+ OffsetOf_CreateAndConsumeTextureCHROMIUMImmediate_client_id_not_8);
+
struct BindUniformLocationCHROMIUM {
typedef BindUniformLocationCHROMIUM ValueType;
static const CommandId kCmdId = kBindUniformLocationCHROMIUM;

Powered by Google App Engine
This is Rietveld 408576698