diff options
| author | Jay Kwak <82421531+jkwak-work@users.noreply.github.com> | 2024-04-01 22:02:25 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-04-01 22:02:25 -0700 |
| commit | 251f55c5ec4cb2b7432e71d6ba8adc96700d35c2 (patch) | |
| tree | 6360ae937545943a97f3a380cbcb3c2d8fb950bd /source/slang/slang-emit-c-like.cpp | |
| parent | daf63cc983fd5f8f2b24872a9125e0394ed2180e (diff) | |
Support SM6.6 keyword "WaveSize" (#3871)
Resolves an issue #3385
Shader Model 6.6 added a new keyowrd, "WaveSize". See the following link
for more details:
https://microsoft.github.io/DirectX-Specs/d3d/HLSL_SM_6_6_WaveSize.html
Co-authored-by: Yong He <yonghe@outlook.com>
Diffstat (limited to 'source/slang/slang-emit-c-like.cpp')
| -rw-r--r-- | source/slang/slang-emit-c-like.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source/slang/slang-emit-c-like.cpp b/source/slang/slang-emit-c-like.cpp index 5813819b4..58ca39b69 100644 --- a/source/slang/slang-emit-c-like.cpp +++ b/source/slang/slang-emit-c-like.cpp @@ -268,6 +268,16 @@ void CLikeSourceEmitter::emitSimpleType(IRType* type) return decor; } +/* static */IRWaveSizeDecoration* CLikeSourceEmitter::getComputeWaveSize(IRFunc* func, Int* outWaveSize) +{ + IRWaveSizeDecoration* decor = func->findDecoration<IRWaveSizeDecoration>(); + if (decor) + { + *outWaveSize = Int(getIntVal(decor->getOperand(0))); + } + return decor; +} + List<IRWitnessTableEntry*> CLikeSourceEmitter::getSortedWitnessTableEntries(IRWitnessTable* witnessTable) { List<IRWitnessTableEntry*> sortedWitnessTableEntries; |
