diff options
Diffstat (limited to 'source/slang/slang-ir.cpp')
| -rw-r--r-- | source/slang/slang-ir.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/source/slang/slang-ir.cpp b/source/slang/slang-ir.cpp index 11f8cdb87..b53bfc9d1 100644 --- a/source/slang/slang-ir.cpp +++ b/source/slang/slang-ir.cpp @@ -7387,6 +7387,8 @@ namespace Slang case BaseType::UInt16: case BaseType::UInt: case BaseType::UInt64: + case BaseType::IntPtr: + case BaseType::UIntPtr: return true; default: return false; @@ -8305,11 +8307,12 @@ namespace Slang IRInst* val, CapabilityName targetCapabilityAtom); - bool findTargetIntrinsicDefinition(IRInst* callee, CapabilitySet const& targetCaps, UnownedStringSlice& outDefinition) + bool findTargetIntrinsicDefinition(IRInst* callee, CapabilitySet const& targetCaps, UnownedStringSlice& outDefinition, IRInst*& outInst) { if (auto decor = findBestTargetIntrinsicDecoration(callee, targetCaps)) { outDefinition = decor->getDefinition(); + outInst = decor; return true; } auto func = as<IRGlobalValueWithCode>(callee); @@ -8320,6 +8323,7 @@ namespace Slang if (auto genAsm = as<IRGenericAsm>(block->getTerminator())) { outDefinition = genAsm->getAsm(); + outInst = genAsm; return true; } } |
