summaryrefslogtreecommitdiff
path: root/source/slang/slang-mangle.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/slang-mangle.cpp')
-rw-r--r--source/slang/slang-mangle.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/source/slang/slang-mangle.cpp b/source/slang/slang-mangle.cpp
index 056c7accb..ea620ebb2 100644
--- a/source/slang/slang-mangle.cpp
+++ b/source/slang/slang-mangle.cpp
@@ -357,6 +357,21 @@ void emitVal(ManglingContext* context, Val* val)
emitVal(context, lookupIntVal->getWitness());
emitName(context, lookupIntVal->getKey()->getName());
}
+ else if (auto sizeOfIntVal = dynamicCast<SizeOfIntVal>(val))
+ {
+ emitRaw(context, "KSO");
+ emitVal(context, sizeOfIntVal->getTypeArg());
+ }
+ else if (auto alignOfIntVal = dynamicCast<AlignOfIntVal>(val))
+ {
+ emitRaw(context, "KAO");
+ emitVal(context, alignOfIntVal->getTypeArg());
+ }
+ else if (auto countOfIntVal = dynamicCast<CountOfIntVal>(val))
+ {
+ emitRaw(context, "KCO");
+ emitVal(context, countOfIntVal->getTypeArg());
+ }
else if (const auto polynomialIntVal = dynamicCast<PolynomialIntVal>(val))
{
emitRaw(context, "KX");