From e8a1dd11eab4c07366b29aca775eb927a465e133 Mon Sep 17 00:00:00 2001 From: Yong He Date: Fri, 8 Sep 2023 12:26:07 -0700 Subject: Don't inline callees with custom derivative before autodiff. (#3196) Co-authored-by: Yong He --- source/slang/slang-ir-autodiff-rev.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'source/slang/slang-ir-autodiff-rev.cpp') diff --git a/source/slang/slang-ir-autodiff-rev.cpp b/source/slang/slang-ir-autodiff-rev.cpp index 8d7582373..681c69cd3 100644 --- a/source/slang/slang-ir-autodiff-rev.cpp +++ b/source/slang/slang-ir-autodiff-rev.cpp @@ -351,6 +351,7 @@ namespace Slang builder.setInsertBefore(diffFunc->getFirstDecorationOrChild()); cloneInst(&cloneEnv, &builder, dictDecor); } + copyOriginalDecorations(origFunc, diffFunc); builder.addFloatingModeOverrideDecoration(diffFunc, FloatingPointMode::Fast); return InstPair(primalFunc, diffFunc); } @@ -532,7 +533,7 @@ namespace Slang { removeLinkageDecorations(func); - performForceInlining(func); + performPreAutoDiffForceInlining(func); DifferentiableTypeConformanceContext diffTypeContext(autoDiffSharedContext); diffTypeContext.setFunc(func); -- cgit v1.2.3