[PATCH] D26485: Add IntrInaccessibleMemOnly property for intrinsics
Andy Kaylor via llvm-commits
llvm-commits at lists.llvm.org
Thu Nov 10 10:48:39 PST 2016
andrew.w.kaylor updated this revision to Diff 77515.
andrew.w.kaylor added a comment.
I added the IntrInaccessibleMemOrArgMemOnly property, and updated the llvm.assume intrinsic to use IntrInaccessibleMemOnly.
It turns out that I was wrong about this changing the aliasing behavior, at least with respect to BasicAA, because BasicAA specifically looks for llvm.assume and reports that it does not alias with any memory location or function call. The reason I thought it would be a change is because I expected llvm.assume with the new property to alias in the same way any other inaccessiblememonly function would, meaning it would report "Both ModRef" for any function call except calls to argmemonly functions.
It's not clear to me which other existing intrinsics should be using the new properties.
Repository:
rL LLVM
https://reviews.llvm.org/D26485
Files:
include/llvm/IR/Intrinsics.td
utils/TableGen/CodeGenIntrinsics.h
utils/TableGen/CodeGenTarget.cpp
utils/TableGen/IntrinsicEmitter.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D26485.77515.patch
Type: text/x-patch
Size: 6083 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20161110/369485e6/attachment.bin>
More information about the llvm-commits
mailing list