[PATCH] D64258: [InferFuncAttributes] extend 'dereferenceable' attribute based on loads
Sanjay Patel via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 26 05:56:48 PST 2019
spatel added a comment.
In D64258#1760106 <https://reviews.llvm.org/D64258#1760106>, @uenoku wrote:
> I uploaded a patch(D70714 <https://reviews.llvm.org/D70714>). As far as I see, almost all the cases are covered.
Thanks! The new patch appears to do everything that this patch tried to do and much more, so I'm happy to abandon and continue discussion on the new patch.
There's 1 new test that I was planning to add based on feedback here:
; TODO: We should allow inference for atomic (but not volatile) ops.
define void @atomic_is_alright(i16* %ptr) {
; CHECK-LABEL: @atomic_is_alright(i16* %ptr)
%arrayidx0 = getelementptr i16, i16* %ptr, i64 0
%arrayidx1 = getelementptr i16, i16* %ptr, i64 1
%arrayidx2 = getelementptr i16, i16* %ptr, i64 2
%t0 = load atomic i16, i16* %arrayidx0 unordered, align 2
%t1 = load i16, i16* %arrayidx1
%t2 = load i16, i16* %arrayidx2
ret void
}
...so I can commit that as-is to trunk as a baseline test, and then you can rebase D70714 <https://reviews.llvm.org/D70714> as needed.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D64258/new/
https://reviews.llvm.org/D64258
More information about the llvm-commits
mailing list