[all-commits] [llvm/llvm-project] 34033a: [PowerPC] Skip combine for vector_shuffles when tw...
Amy Kwan via All-commits
all-commits at lists.llvm.org
Wed Jun 15 12:12:49 PDT 2022
Author: Amy Kwan <amy.kwan1 at ibm.com>
Date: 2022-06-15 (Wed, 15 Jun 2022)
[PowerPC] Skip combine for vector_shuffles when two scalar_to_vector nodes are different vector types.
Currently in `combineVectorShuffle()`, we update the shuffle mask if either
input vector comes from a scalar_to_vector, and we keep the respective input
vectors in its permuted form by producing PPCISD::SCALAR_TO_VECTOR_PERMUTED.
However, it is possible that we end up in a situation where both input vectors
to the vector_shuffle are scalar_to_vector, and are different vector types.
In situations like this, the shuffle mask is updated incorrectly as the current
code assumes both scalar_to_vector inputs are the same vector type.
This patch skips the combines for vector_shuffle if both input vectors are
scalar_to_vector, and if they are of different vector types. A follow up patch
will focus on fixing this issue afterwards, in order to correctly update the
Differential Revision: https://reviews.llvm.org/D127818
More information about the All-commits