242 MatchTypeWithDefault(
246 const auto & address = *StoreOperation::AddressInput(node).origin();
247 AgnosticModRefSet modRefSet;
248 AddPointerTargetsToModRefSet(address, ModRefEffect::ModOnly, modRefSet);
249 ModRefSummary_->SetSimpleNodeModRef(node, std::move(modRefSet));
253 const auto & address = *LoadOperation::AddressInput(node).origin();
254 AgnosticModRefSet modRefSet;
255 AddPointerTargetsToModRefSet(address, ModRefEffect::RefOnly, modRefSet);
256 ModRefSummary_->SetSimpleNodeModRef(node, std::move(modRefSet));
260 AgnosticModRefSet modRefSet;
261 const auto & srcAddress = *MemCpyOperation::sourceInput(node).origin();
262 const auto & dstAddress = *MemCpyOperation::destinationInput(node).origin();
263 AddPointerTargetsToModRefSet(srcAddress, ModRefEffect::RefOnly, modRefSet);
264 AddPointerTargetsToModRefSet(dstAddress, ModRefEffect::ModOnly, modRefSet);
265 ModRefSummary_->SetSimpleNodeModRef(node, std::move(modRefSet));
269 AgnosticModRefSet modRefSet;
270 const auto & srcAddress = *MemMoveOperation::sourceInput(node).origin();
271 const auto & dstAddress = *MemMoveOperation::destinationInput(node).origin();
272 AddPointerTargetsToModRefSet(srcAddress, RefOnly, modRefSet);
273 AddPointerTargetsToModRefSet(dstAddress, ModOnly, modRefSet);
274 ModRefSummary_->SetSimpleNodeModRef(node, std::move(modRefSet));
278 AgnosticModRefSet modRefSet;
279 const auto & dstAddress = *MemSetOperation::destinationInput(node).origin();
280 AddPointerTargetsToModRefSet(dstAddress, ModRefEffect::ModOnly, modRefSet);
281 ModRefSummary_->SetSimpleNodeModRef(node, std::move(modRefSet));
285 AgnosticModRefSet modRefSet;
286 const auto & freeAddress = *FreeOperation::getAddressInput(node).origin();
287 AddPointerTargetsToModRefSet(freeAddress, ModRefEffect::ModOnly, modRefSet);
288 ModRefSummary_->SetSimpleNodeModRef(node, std::move(modRefSet));
292 const auto allocaMemoryNode = ModRefSummary_->GetPointsToGraph().getNodeForAlloca(node);
293 AgnosticModRefSet modRefSet;
295 modRefSet.addMemoryNode(allocaMemoryNode, ModRefEffect::RefOnly);
296 ModRefSummary_->SetSimpleNodeModRef(node, std::move(modRefSet));
300 const auto mallocMemoryNode = ModRefSummary_->GetPointsToGraph().getNodeForMalloc(node);
301 AgnosticModRefSet modRefSet;
303 modRefSet.addMemoryNode(mallocMemoryNode, ModRefEffect::RefOnly);
304 ModRefSummary_->SetSimpleNodeModRef(node, std::move(modRefSet));
318 JLM_ASSERT(!hasMemoryState(node));