[PATCH] D73426: [Attributor] Derive memory location attributes (argmemonly, ...)

Hideto Ueno via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Feb 2 02:58:10 PST 2020


uenoku added a comment.

Are there tests for `inaccessiblememonly` or `inaccessiblemem_or_argmemonly`?



================
Comment at: llvm/test/Transforms/Attributor/ArgumentPromotion/X86/min-legal-vector-width.ll:303
 ; CHECK-NEXT:    [[TMP3:%.*]] = bitcast <8 x i64>* [[TMP]] to i8*
-; CHECK-NEXT:    call void @llvm.memset.p0i8.i64(i8* nonnull align 32 dereferenceable(64) [[TMP3]], i8 0, i64 32, i1 false)
+; CHECK-NEXT:    call void @llvm.memset.p0i8.i64(i8* nonnull writeonly align 32 dereferenceable(64) [[TMP3]], i8 0, i64 32, i1 false)
 ; CHECK-NEXT:    call fastcc void @callee_avx2_legal512_prefer256_call_avx2_legal256_prefer256(<8 x i64>* noalias nocapture nofree nonnull writeonly align 32 dereferenceable(64) [[TMP2]], <8 x i64>* noalias nocapture nofree nonnull readonly align 32 dereferenceable(64) [[TMP]])
----------------
Why is there new `writeonly`? Is it simply by on-demand creation?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73426/new/

https://reviews.llvm.org/D73426





More information about the llvm-commits mailing list