summaryrefslogtreecommitdiff
path: root/source/slang/slang-ir-autodiff.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/slang/slang-ir-autodiff.cpp')
-rw-r--r--source/slang/slang-ir-autodiff.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/source/slang/slang-ir-autodiff.cpp b/source/slang/slang-ir-autodiff.cpp
index fcfbf3bee..65e880868 100644
--- a/source/slang/slang-ir-autodiff.cpp
+++ b/source/slang/slang-ir-autodiff.cpp
@@ -563,12 +563,15 @@ bool isDifferentiableType(DifferentiableTypeConformanceContext& context, IRInst*
return false;
}
-bool canInstBeStored(IRInst* inst)
+bool canTypeBeStored(IRInst* type)
{
- if (as<IRBasicType>(inst->getDataType()))
+ if (!type)
+ return false;
+
+ if (as<IRBasicType>(type))
return true;
- switch (inst->getDataType()->getOp())
+ switch (type->getOp())
{
case kIROp_StructType:
case kIROp_OptionalType:
@@ -716,6 +719,9 @@ struct AutoDiffPass : public InstPassBase
break;
}
break;
+ case kIROp_PrimalSubstitute:
+ // Explicit primal subst operator is not yet supported.
+ SLANG_UNIMPLEMENTED_X("explicit primal_subst operator.");
default:
break;
}