summaryrefslogtreecommitdiff
path: root/source/slang/slang-ir-autodiff-rev.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2023-03-21 21:29:13 -0700
committerGitHub <noreply@github.com>2023-03-21 21:29:13 -0700
commitd8a40abba5223fbcb56c52b04ccb88c02bbaf79f (patch)
tree3207babbce41957fbd01c3c791fe9957c81f6a09 /source/slang/slang-ir-autodiff-rev.cpp
parent83876733d69582eec6bad26af64a651d40fa43aa (diff)
[TreatAsDifferentiable] functions. (#2720)
Diffstat (limited to 'source/slang/slang-ir-autodiff-rev.cpp')
-rw-r--r--source/slang/slang-ir-autodiff-rev.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/source/slang/slang-ir-autodiff-rev.cpp b/source/slang/slang-ir-autodiff-rev.cpp
index 7c11a1286..e01d65f4f 100644
--- a/source/slang/slang-ir-autodiff-rev.cpp
+++ b/source/slang/slang-ir-autodiff-rev.cpp
@@ -295,7 +295,8 @@ namespace Slang
// Create an empty func to represent the transcribed func of `origFunc`.
InstPair BackwardDiffTranscriberBase::transcribeFuncHeaderImpl(IRBuilder* inBuilder, IRFunc* origFunc)
{
- if (!isBackwardDifferentiableFunc(origFunc))
+ if (!isBackwardDifferentiableFunc(origFunc) &&
+ !origFunc->findDecoration<IRTreatAsDifferentiableDecoration>())
return InstPair(nullptr, nullptr);
IRBuilder builder = *inBuilder;