summaryrefslogtreecommitdiffstats
path: root/source/slang/slang-ir.cpp
diff options
context:
space:
mode:
authorJulius Ikkala <julius.ikkala@gmail.com>2025-01-17 18:58:18 +0200
committerGitHub <noreply@github.com>2025-01-17 08:58:18 -0800
commitddc4a1799a9d21084604cc2bf334d5d91cb329e3 (patch)
tree779e4d8c8ccbc48f2797a8672e9f5e78c5b081a7 /source/slang/slang-ir.cpp
parent91430870a8a6ec2825969823b892a9c8a0d588ab (diff)
Fix nullptr in generic specialization (#6066)
* Fix nullptr in generic specialization * Fix formatting * Revert "Fix nullptr in generic specialization" and add emitPtrLit instead * Add type parameter to getPtrValue() --------- Co-authored-by: Yong He <yonghe@outlook.com>
Diffstat (limited to 'source/slang/slang-ir.cpp')
-rw-r--r--source/slang/slang-ir.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/source/slang/slang-ir.cpp b/source/slang/slang-ir.cpp
index e15ec6f07..ac51ae451 100644
--- a/source/slang/slang-ir.cpp
+++ b/source/slang/slang-ir.cpp
@@ -2395,9 +2395,8 @@ IRBlobLit* IRBuilder::getBlobValue(ISlangBlob* blob)
return static_cast<IRBlobLit*>(_findOrEmitConstant(keyInst));
}
-IRPtrLit* IRBuilder::_getPtrValue(void* data)
+IRPtrLit* IRBuilder::getPtrValue(IRType* type, void* data)
{
- auto type = getPtrType(getVoidType());
IRConstant keyInst;
memset(&keyInst, 0, sizeof(keyInst));
keyInst.m_op = kIROp_PtrLit;
@@ -6324,7 +6323,7 @@ IRDecoration* IRBuilder::addDecoration(
void IRBuilder::addHighLevelDeclDecoration(IRInst* inst, Decl* decl)
{
- auto ptrConst = _getPtrValue(decl);
+ auto ptrConst = getPtrValue(getPtrType(getVoidType()), decl);
addDecoration(inst, kIROp_HighLevelDeclDecoration, ptrConst);
}