summaryrefslogtreecommitdiff
path: root/source/slang/modifier-defs.h
diff options
context:
space:
mode:
authorjsmall-nvidia <jsmall@nvidia.com>2018-08-22 11:36:02 -0400
committerTim Foley <tfoleyNV@users.noreply.github.com>2018-08-22 08:36:02 -0700
commit6a8ad6eb4cab72c18de48762768e04d08b60a21c (patch)
tree903863bf0154cb73e87c7a70a65c022649c096d3 /source/slang/modifier-defs.h
parent0ce1131ba12f777fbaa40004e0e3e7af89ccf4f0 (diff)
Support for [[vk::push_constant]] (#629)
* Support for attributed [[vk::push_constant]] and [[push_constant]]. Can also use layout(push_constant). * Fix test so matches the expected output. * Add expected output to binding-push-constant-gl.hlsl * Trivial change to force travis rebuild to test the gcc linux build really has a problem.
Diffstat (limited to 'source/slang/modifier-defs.h')
-rw-r--r--source/slang/modifier-defs.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/source/slang/modifier-defs.h b/source/slang/modifier-defs.h
index 70c26568d..d53f8bc6c 100644
--- a/source/slang/modifier-defs.h
+++ b/source/slang/modifier-defs.h
@@ -129,7 +129,6 @@ SIMPLE_SYNTAX_CLASS(GLSLUnparsedLayoutModifier , GLSLLayoutModifier)
// Specific cases for known GLSL `layout` modifiers that we need to work with
SIMPLE_SYNTAX_CLASS(GLSLConstantIDLayoutModifier , GLSLParsedLayoutModifier)
SIMPLE_SYNTAX_CLASS(GLSLLocationLayoutModifier , GLSLParsedLayoutModifier)
-SIMPLE_SYNTAX_CLASS(GLSLPushConstantLayoutModifier, GLSLParsedLayoutModifier)
SIMPLE_SYNTAX_CLASS(GLSLLocalSizeLayoutModifier, GLSLUnparsedLayoutModifier)
SIMPLE_SYNTAX_CLASS(GLSLLocalSizeXLayoutModifier, GLSLLocalSizeLayoutModifier)
@@ -328,6 +327,9 @@ SIMPLE_SYNTAX_CLASS(FlattenAttribute, Attribute) // `[flatten]`
SIMPLE_SYNTAX_CLASS(ForceCaseAttribute, Attribute) // `[forcecase]`
SIMPLE_SYNTAX_CLASS(CallAttribute, Attribute) // `[call]`
+// [[vk_push_constant]] [[push_constant]]
+SIMPLE_SYNTAX_CLASS(PushConstantAttribute, Attribute)
+
// [[vk_binding]]
SYNTAX_CLASS(GLSLBindingAttribute, Attribute)
FIELD(int32_t, binding = 0)