summaryrefslogtreecommitdiff
path: root/source/slang/slang-emit-cuda.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2020-09-21 08:27:10 -0700
committerGitHub <noreply@github.com>2020-09-21 08:27:10 -0700
commit83514bd25160a9af91abc1b9acd7e44657447526 (patch)
treecd364f0b519baa9c840002a8fa0a0ed84bebe59e /source/slang/slang-emit-cuda.cpp
parent21339e802d77981bbc64cc21cc1315cc41932f35 (diff)
Enable all dynamic dispatch tests on CUDA. (#1552)
* Enable all dynamic dispatch tests on CUDA. * Fix expected cross-compile test results.
Diffstat (limited to 'source/slang/slang-emit-cuda.cpp')
-rw-r--r--source/slang/slang-emit-cuda.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/source/slang/slang-emit-cuda.cpp b/source/slang/slang-emit-cuda.cpp
index ecc3eb68b..b029a8aa6 100644
--- a/source/slang/slang-emit-cuda.cpp
+++ b/source/slang/slang-emit-cuda.cpp
@@ -79,6 +79,15 @@ static bool _isSingleNameBasicType(IROp op)
}
}
+void CUDASourceEmitter::emitTempModifiers(IRInst* temp)
+{
+ CPPSourceEmitter::emitTempModifiers(temp);
+ if (as<IRModuleInst>(temp->getParent()))
+ {
+ m_writer->emit("__device__ ");
+ }
+}
+
SlangResult CUDASourceEmitter::_calcCUDATextureTypeName(IRTextureTypeBase* texType, StringBuilder& outName)
{
// Not clear how to do this yet
@@ -324,7 +333,7 @@ String CUDASourceEmitter::generateEntryPointNameImpl(IREntryPointDecoration* ent
void CUDASourceEmitter::emitGlobalRTTISymbolPrefix()
{
- m_writer->emit("__device__");
+ m_writer->emit("__device__ ");
}
void CUDASourceEmitter::emitCall(const HLSLIntrinsic* specOp, IRInst* inst, const IRUse* operands, int numOperands, const EmitOpInfo& inOuterPrec)