summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-emit-cpp.h
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2020-09-17 16:46:23 -0700
committerGitHub <noreply@github.com>2020-09-17 16:46:23 -0700
commit2ddca33686c08e1833c0d82a420fb2b27cde4e37 (patch)
treeeac30dde6995ed16afbf89bf00b1bf76e7ebfb1f /source/slang/slang-emit-cpp.h
parent017acb3b58df51ec8bf3bb7eb9f66e58b6713145 (diff)
Initial attempt to enable CUDA dynamic dispatch codegen (#1549)
* Front-load cuda module loading to fill in RTTI pointers. * Enable dynamic dispatch codegen for CUDA.
Diffstat (limited to 'source/slang/slang-emit-cpp.h')
-rw-r--r--source/slang/slang-emit-cpp.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/source/slang/slang-emit-cpp.h b/source/slang/slang-emit-cpp.h
index 3b7acd953..b1ca7475f 100644
--- a/source/slang/slang-emit-cpp.h
+++ b/source/slang/slang-emit-cpp.h
@@ -65,6 +65,7 @@ protected:
virtual void emitSimpleFuncImpl(IRFunc* func) SLANG_OVERRIDE;
virtual void emitOperandImpl(IRInst* inst, EmitOpInfo const& outerPrec) SLANG_OVERRIDE;
virtual void emitParamTypeImpl(IRType* type, String const& name) SLANG_OVERRIDE;
+ virtual void emitGlobalRTTISymbolPrefix();
virtual void emitWitnessTable(IRWitnessTable* witnessTable) SLANG_OVERRIDE;
virtual void emitInterface(IRInterfaceType* interfaceType) SLANG_OVERRIDE;
virtual void emitRTTIObject(IRRTTIObject* rttiObject) SLANG_OVERRIDE;
@@ -78,8 +79,6 @@ protected:
virtual SlangResult calcFuncName(const HLSLIntrinsic* specOp, StringBuilder& out);
virtual SlangResult calcScalarFuncName(HLSLIntrinsic::Op op, IRBasicType* type, StringBuilder& outBuilder);
- // Emits a struct of function pointers defined in `interfaceType`.
- void _maybeEmitWitnessTableTypeDefinition(IRInterfaceType* interfaceType);
void _maybeEmitSpecializedOperationDefinition(const HLSLIntrinsic* specOp);
void _emitForwardDeclarations(const List<EmitAction>& actions);