summaryrefslogtreecommitdiff
path: root/source/slang/slang-ir-specialize.cpp
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2024-07-25 15:00:14 -0700
committerGitHub <noreply@github.com>2024-07-25 15:00:14 -0700
commitc9d89a40775a055873adf82cfb0ee1cb6bdcb93c (patch)
tree2438f353e87b30febe966ca23976793637c018d2 /source/slang/slang-ir-specialize.cpp
parent1343ab79fcd0ff9e5ffebbcf95414e51ab19e9cd (diff)
Overhaul IR lowering of pointer types. (#4710)
* Overhaul IR lowering of pointer types. * Propagate address space in IRBuilder. * Fixup. * Fix. * Fix. * Change how Ptr type is printed to text. * Fix.
Diffstat (limited to 'source/slang/slang-ir-specialize.cpp')
-rw-r--r--source/slang/slang-ir-specialize.cpp6
1 files changed, 1 insertions, 5 deletions
diff --git a/source/slang/slang-ir-specialize.cpp b/source/slang/slang-ir-specialize.cpp
index 5713b9639..5c9e1ad24 100644
--- a/source/slang/slang-ir-specialize.cpp
+++ b/source/slang/slang-ir-specialize.cpp
@@ -1996,9 +1996,6 @@ struct SpecializationContext
auto index = inst->getIndex();
auto val = wrapInst->getWrappedValue();
- auto ptrType = cast<IRPtrTypeBase>(val->getDataType());
- auto arrayType = cast<IRArrayTypeBase>(ptrType->getValueType());
- auto elementType = arrayType->getElementType();
auto resultType = inst->getFullType();
@@ -2013,8 +2010,7 @@ struct SpecializationContext
slotOperands.add(wrapInst->getSlotOperand(ii));
}
- auto elementPtrType = builder.getPtrType(ptrType->getOp(), elementType);
- auto newElementAddr = builder.emitElementAddress(elementPtrType, val, index);
+ auto newElementAddr = builder.emitElementAddress(val, index);
auto newWrapExistentialInst = builder.emitWrapExistential(
resultType, newElementAddr, slotOperandCount, slotOperands.getArrayView().getBuffer());