[ConstantFold][SVE] Fix constant folding for shufflevector.
authorEli Friedman <efriedma@quicinc.com>
Fri, 6 Dec 2019 20:33:46 +0000 (12:33 -0800)
committerEli Friedman <efriedma@quicinc.com>
Mon, 9 Dec 2019 23:31:50 +0000 (15:31 -0800)
commit7c69a03c56601a55f47f29ea59e33c37e62db556
tree946b82b7006ec374ce5f2d504361ba63626287e7
parent584ed8822631481ced8d3574cc1fed1585aed77d
[ConstantFold][SVE] Fix constant folding for shufflevector.

Don't try to fold away shuffles which can't be folded.  Fix creation of
shufflevector constant expressions.

Differential Revision: https://reviews.llvm.org/D71147
llvm/lib/IR/ConstantFold.cpp
llvm/lib/IR/Constants.cpp
llvm/lib/IR/ConstantsContext.h
llvm/test/Analysis/ConstantFolding/shufflevector.ll [new file with mode: 0644]