diff options
Diffstat (limited to 'source/slang/slang-ir.cpp')
| -rw-r--r-- | source/slang/slang-ir.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/source/slang/slang-ir.cpp b/source/slang/slang-ir.cpp index 2fc1a9466..a27bf8658 100644 --- a/source/slang/slang-ir.cpp +++ b/source/slang/slang-ir.cpp @@ -1047,6 +1047,20 @@ namespace Slang return findOffsetAttr(kind) != nullptr; } + bool IRVarLayout::usesResourceFromKinds(LayoutResourceKindFlags kindFlags) + { + // Like usesResourceKind this works because there is an offset stored even if it's 0. + if (kindFlags) + { + for (auto offsetAttr : getOffsetAttrs()) + { + if (LayoutResourceKindFlag::make(offsetAttr->getResourceKind()) & kindFlags ) + return true; + } + } + return false; + } + IRSystemValueSemanticAttr* IRVarLayout::findSystemValueSemanticAttr() { return findAttr<IRSystemValueSemanticAttr>(); |
