summaryrefslogtreecommitdiffstats
path: root/source/slang/emit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/emit.cpp')
-rw-r--r--source/slang/emit.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/source/slang/emit.cpp b/source/slang/emit.cpp
index 7d7553bc5..8dcbcdbf4 100644
--- a/source/slang/emit.cpp
+++ b/source/slang/emit.cpp
@@ -1224,6 +1224,12 @@ struct EmitVisitor
emitTypeImpl(arrayType->baseType, &arrayDeclarator);
}
+ void visitGroupSharedType(GroupSharedType* type, TypeEmitArg const& arg)
+ {
+ Emit("groupshared ");
+ emitTypeImpl(type->valueType, arg.declarator);
+ }
+
void EmitType(
RefPtr<Type> type,
SourceLoc const& typeLoc,
@@ -4492,6 +4498,9 @@ emitDeclImpl(decl, nullptr);
if(!type)
return;
+ if (type->Equals(getSession()->getVoidType()))
+ return;
+
emitIRType(context, type, getIRName(inst));
emit(" = ");
}
@@ -6266,7 +6275,10 @@ String emitEntryPoint(
auto lowered = lowerEntryPointToIR(entryPoint, programLayout, target);
// debugging:
-// dumpIR(lowered);
+ if (translationUnit->compileRequest->shouldDumpIR)
+ {
+ dumpIR(lowered);
+ }
// TODO: depending on the target we are trying to generate code for,
// we may need to apply certain transformations, and we may also