From fba316f0e7dacc7f93bee3a95fb93b2ab02bdd80 Mon Sep 17 00:00:00 2001 From: Sai Praveen Bangaru <31557731+saipraveenb25@users.noreply.github.com> Date: Thu, 13 Jun 2024 17:30:16 -0400 Subject: Remove `IRHLSLExportDecoration` and `IRKeepAliveDecoration` for non-CUDA/Torch targets (#4364) * Remove `IRHLSLExportDecoration` and `IRKeepAliveDecoration` for non-CUDA/Torch targets * Update hlsl-torch-cross-compile.slang --- source/slang/slang-lower-to-ir.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'source/slang/slang-lower-to-ir.cpp') diff --git a/source/slang/slang-lower-to-ir.cpp b/source/slang/slang-lower-to-ir.cpp index f8faf7c07..cc4704fe9 100644 --- a/source/slang/slang-lower-to-ir.cpp +++ b/source/slang/slang-lower-to-ir.cpp @@ -1385,21 +1385,27 @@ static void addLinkageDecoration( { builder->addCudaKernelDecoration(inst); builder->addExternCppDecoration(inst, decl->getName()->text.getUnownedSlice()); - builder->addHLSLExportDecoration(inst); + + // Temp decorations to get this function through the linker. builder->addKeepAliveDecoration(inst); + builder->addHLSLExportDecoration(inst); } else if (as(modifier)) { builder->addTorchEntryPointDecoration(inst, decl->getName()->text.getUnownedSlice()); builder->addCudaHostDecoration(inst); - builder->addHLSLExportDecoration(inst); - builder->addKeepAliveDecoration(inst); builder->addExternCppDecoration(inst, decl->getName()->text.getUnownedSlice()); + + // Temp decorations to get this function through the linker. + builder->addKeepAliveDecoration(inst); + builder->addHLSLExportDecoration(inst); } else if (as(modifier)) { builder->addAutoPyBindCudaDecoration(inst, decl->getName()->text.getUnownedSlice()); builder->addAutoPyBindExportInfoDecoration(inst); + + // Temp decorations to get this function through the linker. builder->addKeepAliveDecoration(inst); builder->addHLSLExportDecoration(inst); } -- cgit v1.2.3