From c9d89a40775a055873adf82cfb0ee1cb6bdcb93c Mon Sep 17 00:00:00 2001 From: Yong He Date: Thu, 25 Jul 2024 15:00:14 -0700 Subject: 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. --- source/slang/slang-ir-specialize-address-space.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'source/slang/slang-ir-specialize-address-space.cpp') diff --git a/source/slang/slang-ir-specialize-address-space.cpp b/source/slang/slang-ir-specialize-address-space.cpp index 1d899e240..24eee3d76 100644 --- a/source/slang/slang-ir-specialize-address-space.cpp +++ b/source/slang/slang-ir-specialize-address-space.cpp @@ -331,9 +331,12 @@ namespace Slang auto ptrType = as(inst->getDataType()); if (ptrType) { - IRBuilder builder(inst); - auto newType = builder.getPtrType(ptrType->getOp(), ptrType->getValueType(), addrSpace); - setDataType(inst, newType); + if (ptrType->getAddressSpace() != addrSpace) + { + IRBuilder builder(inst); + auto newType = builder.getPtrType(ptrType->getOp(), ptrType->getValueType(), addrSpace); + setDataType(inst, newType); + } } } } -- cgit v1.2.3