[IR] Mark memset.* intrinsics as IntrWriteMem.
authorFlorian Hahn <flo@fhahn.com>
Thu, 16 Jan 2020 10:25:29 +0000 (10:25 +0000)
committerFlorian Hahn <flo@fhahn.com>
Thu, 16 Jan 2020 10:35:46 +0000 (10:35 +0000)
commit0b21d552620dd593ddc93a93b5e779d5950f4a24
treeaa6026f561bb6ce8cc2ee271a34e737d9c30b6de
parent736a3802124b57490fa1e67538415a2a77fa731c
[IR] Mark memset.* intrinsics as IntrWriteMem.

llvm.memset intrinsics do only write memory, but are missing
IntrWriteMem, so they doesNotReadMemory() returns false for them.

The test change is due to the test checking the fn attribute ids at the
call sites, which got bumped up due to a new combination with writeonly
appearing in the test file.

Reviewers: jdoerfert, reames, efriedma, nlopes, lebedev.ri

Reviewed By: jdoerfert

Differential Revision: https://reviews.llvm.org/D72789
llvm/include/llvm/IR/Intrinsics.td
llvm/test/Analysis/BasicAA/cs-cs.ll
llvm/test/Transforms/DeadStoreElimination/simple.ll
llvm/test/Transforms/InstCombine/malloc-free-delete.ll
llvm/test/Transforms/ObjCARC/nested.ll