diff options
| author | Yong He <yonghe@outlook.com> | 2022-09-06 16:08:48 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-09-06 16:08:48 -0700 |
| commit | 9f3e83cf0d664c87a618edf08d834829178030e6 (patch) | |
| tree | f0545822e4f37f18ec847166e6a00912c10251a1 /source/slang/slang-ir-specialize-dynamic-associatedtype-lookup.cpp | |
| parent | 61ff1ba8459d70cbc887040c530b5ce1a125ec77 (diff) | |
Specialize and SSA in a loop + better diagnostics on dynamic dispatch failure (#2396)
* Report diagnostic when dynamic dispatch failed instead of crashing.
* Specialize and SSA in a loop. Explicit specialization only interface.
Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'source/slang/slang-ir-specialize-dynamic-associatedtype-lookup.cpp')
| -rw-r--r-- | source/slang/slang-ir-specialize-dynamic-associatedtype-lookup.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/source/slang/slang-ir-specialize-dynamic-associatedtype-lookup.cpp b/source/slang/slang-ir-specialize-dynamic-associatedtype-lookup.cpp index 89b965739..0cfa86a1c 100644 --- a/source/slang/slang-ir-specialize-dynamic-associatedtype-lookup.cpp +++ b/source/slang/slang-ir-specialize-dynamic-associatedtype-lookup.cpp @@ -197,7 +197,8 @@ struct AssociatedTypeLookupSpecializationContext if (inst->getOp() == kIROp_WitnessTable) { auto seqId = inst->findDecoration<IRSequentialIDDecoration>(); - SLANG_RELEASE_ASSERT(seqId); + if (!seqId) + return; // Insert code to pack sequential ID into an uint2 at all use sites. IRUse* nextUse = nullptr; for (auto use = inst->firstUse; use; use = nextUse) |
