[PATCH] D49461: [LV] Fix for PR38110, LV encountered llvm_unreachable()

silviu.baranga@arm.com via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 18 02:02:47 PDT 2018


sbaranga added a comment.

Seems reasonable to me.

Ideally we should be handling the phi node case (which is why the unreachable was there), but crashing doesn't seem like the right thing to do.



================
Comment at: lib/Transforms/Vectorize/LoopVectorize.cpp:3279
         NewI = B.CreateShuffleVector(O0, O1, SI->getMask());
-      } else if (isa<LoadInst>(I)) {
+      } else if (isa<LoadInst>(I) || isa<PHINode>(I)) {
         // Don't do anything with the operands, just extend the result.
----------------
Why do we need to have this if statement if we skip the transformation for unhanded instructions?


Repository:
  rL LLVM

https://reviews.llvm.org/D49461





More information about the llvm-commits mailing list