[PATCH] D77828: [BasicAA][SVE] Fix aliasGEP for scalable type.

Huihui Zhang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 9 14:24:56 PDT 2020


huihuiz added a comment.

Current upstream is producing wrong AliasResult for scalable type.

take test.ll , run: opt -basicaa -aa-eval -print-all-alias-modref-info -disable-output test.ll.

Then you will see "  MustAlias:    i32* %gep1, i32* %gep2 "
gep1,gep2 should be MayAlias, not MustAlias.

  define void @gep_bitcast_1(<vscale x 4 x i32>* %p) {
    %gep1 = getelementptr <vscale x 4 x i32>, <vscale x 4 x i32>* %p, i64 1, i64 0
    %p2 = bitcast <vscale x 4 x i32>* %p to i32*
    %gep2 = getelementptr i32, i32* %p2, i64 4
    ret void
  }


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D77828





More information about the llvm-commits mailing list