diff options
| author | Yong He <yonghe@outlook.com> | 2023-10-02 15:39:34 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-02 15:39:34 -0700 |
| commit | d87493a46c00be37b820a473c0827bbb865eb222 (patch) | |
| tree | 33155e6be017238e07314f7793423dd50b748150 /source/slang/slang-ir-array-reg-to-mem.cpp | |
| parent | cea230bc686ef87db4cff47e367bbf824b90377d (diff) | |
More direct-SPIRV fixes. (#3257)
* More direct-SPIRV fixes.
* Fix array-reg-to-mem.
---------
Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'source/slang/slang-ir-array-reg-to-mem.cpp')
| -rw-r--r-- | source/slang/slang-ir-array-reg-to-mem.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/source/slang/slang-ir-array-reg-to-mem.cpp b/source/slang/slang-ir-array-reg-to-mem.cpp index 6f749f242..34bd5b148 100644 --- a/source/slang/slang-ir-array-reg-to-mem.cpp +++ b/source/slang/slang-ir-array-reg-to-mem.cpp @@ -33,9 +33,9 @@ namespace Slang if (auto arrayType = as<IRArrayTypeBase>(param->getFullType())) { changed = true; - builder.setInsertBefore(param); auto ptrArrayType = builder.getPtrType(arrayType); - auto newParam = builder.emitParam(ptrArrayType); + auto newParam = builder.createParam(ptrArrayType); + newParam->insertBefore(param); setInsertAfterOrdinaryInst(&builder, param); auto regVal = builder.emitLoad(newParam); param->replaceUsesWith(regVal); @@ -62,6 +62,7 @@ namespace Slang for (auto paramId : arrayParamIds) { auto arg = call->getArg(paramId); + SLANG_ASSERT(as<IRPtrTypeBase>(paramTypes[paramId])); auto var = builder.emitVar(as<IRPtrTypeBase>(paramTypes[paramId])->getValueType()); builder.emitStore(var, arg); call->setArg(paramId, var); |
