[PATCH] D75892: [InstSimplify][SVE] Fix SimplifyGEPInst for scalable vector.

Huihui Zhang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 9 22:38:44 PDT 2020


huihuiz added a comment.

take test.ll, run: opt -S -instsimplify test.ll -o -

  define <vscale x 4 x <vscale x 4 x i32>*> @getelementptr_2() {
    %ptr = getelementptr <vscale x 4 x i32>, <vscale x 4 x i32>* null, <vscale x 4 x i64> undef
    ret <vscale x 4 x <vscale x 4 x i32>*> %ptr
  }

current upstream crash at: llvm/include/llvm/Support/TypeSize.h:126: uint64_t llvm::TypeSize::getFixedSize() const: Assertion `!IsScalable && "Request for a fixed size on a scalable object"' failed.

This patch depends on D74386 <https://reviews.llvm.org/D74386>, otherwise we get another crash at: llvm/lib/IR/Value.cpp:408: void llvm::Value::doRAUW(llvm::Value *, llvm::Value::ReplaceMetadataUses): Assertion `New->getType() == getType() && "replaceAllUses of value with new value of different type!"' failed.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D75892





More information about the llvm-commits mailing list