summaryrefslogtreecommitdiff
path: root/source/slang/slang-emit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/slang-emit.cpp')
-rw-r--r--source/slang/slang-emit.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/source/slang/slang-emit.cpp b/source/slang/slang-emit.cpp
index b690b7c38..417bbf200 100644
--- a/source/slang/slang-emit.cpp
+++ b/source/slang/slang-emit.cpp
@@ -292,7 +292,6 @@ void calcRequiredLoweringPassSet(RequiredLoweringPassSet& result, CodeGenContext
case kIROp_BackwardDifferentiate:
case kIROp_ForwardDifferentiate:
case kIROp_MakeDifferentialPairUserCode:
- case kIROp_DerivativeMemberDecoration:
result.autodiff = true;
break;
case kIROp_VerticesType:
@@ -709,6 +708,10 @@ Result linkAndOptimizeIR(
if (requiredLoweringPassSet.autodiff)
finalizeAutoDiffPass(targetProgram, irModule);
+ // Remove auto-diff related decorations.
+ // We may have an autodiff decoration regardless of if autodiff is being used.
+ stripAutoDiffDecorations(irModule);
+
finalizeSpecialization(irModule);
requiredLoweringPassSet = {};