diff options
| author | Tim Foley <tfoley@nvidia.com> | 2017-07-19 10:10:17 -0700 |
|---|---|---|
| committer | Tim Foley <tfoley@nvidia.com> | 2017-07-19 10:12:58 -0700 |
| commit | 55a29042a2826f26272c9e1b65cd3745bad3ee31 (patch) | |
| tree | f8016cf92678a6dfaa1903a161ebcad78f0f42d0 /source/slang/modifier-defs.h | |
| parent | a727017340165d02977387e1e1a2a7e328308295 (diff) | |
Fix up translation of `GetDimensions()`
Fixes #122
- In cases with an explicit mip level being specified, there was a mistake in how the argument for setting the mip level in the GLSL code was constructed that led to a parse error in GLSL
- Also, that argument is a `uint` in HLSL and an `int` in GLSL, so an explicit cast was needed
- The GLSL functions here seem to require a newer GLSL (at least higher than `420`), so I had to add in a capability for builtins to specify a required GLSL version. For now I made these ones require `450`.
- Added a test case to confirm that our lowering works (for some definition of "works")
Diffstat (limited to 'source/slang/modifier-defs.h')
| -rw-r--r-- | source/slang/modifier-defs.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source/slang/modifier-defs.h b/source/slang/modifier-defs.h index fadc68695..89f2096e4 100644 --- a/source/slang/modifier-defs.h +++ b/source/slang/modifier-defs.h @@ -59,6 +59,12 @@ SYNTAX_CLASS(RequiredGLSLExtensionModifier, Modifier) FIELD(Token, extensionNameToken) END_SYNTAX_CLASS() +// A modifier to tag something as an intrinsic that requires +// a certain GLSL version to be enabled when used +SYNTAX_CLASS(RequiredGLSLVersionModifier, Modifier) + FIELD(Token, versionNumberToken) +END_SYNTAX_CLASS() + SIMPLE_SYNTAX_CLASS(InOutModifier, OutModifier) // This is a special sentinel modifier that gets added |
