diff options
| author | Jonas Paulsson <paulsson@linux.vnet.ibm.com> | 2017-03-07 09:49:31 +0000 |
|---|---|---|
| committer | Jonas Paulsson <paulsson@linux.vnet.ibm.com> | 2017-03-07 09:49:31 +0000 |
| commit | 1d33cd398880f662cbfbb3a28c2889a617015ee6 (patch) | |
| tree | 384d27ca56f02103c27cb27bc60d9e240c87124f /llvm/lib/Target/SystemZ | |
| parent | 24fb250cad9ecec134287661f024dcdcc4b50d89 (diff) | |
| download | bcm5719-llvm-1d33cd398880f662cbfbb3a28c2889a617015ee6.tar.gz bcm5719-llvm-1d33cd398880f662cbfbb3a28c2889a617015ee6.zip | |
[SystemZ] Add check VT.isSimple() in canTreateAsByteVector()
Since BB-vectorizer can produce vectors of for example 3 elements,
this check is needed.
Review: Ulrich Weigand
llvm-svn: 297136
Diffstat (limited to 'llvm/lib/Target/SystemZ')
| -rw-r--r-- | llvm/lib/Target/SystemZ/SystemZISelLowering.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp b/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp index afc9e60bdf2..6322098e1c3 100644 --- a/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp +++ b/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp @@ -4737,7 +4737,7 @@ const char *SystemZTargetLowering::getTargetNodeName(unsigned Opcode) const { // Return true if VT is a vector whose elements are a whole number of bytes // in width. static bool canTreatAsByteVector(EVT VT) { - return VT.isVector() && VT.getScalarSizeInBits() % 8 == 0; + return VT.isVector() && VT.getScalarSizeInBits() % 8 == 0 && VT.isSimple(); } // Try to simplify an EXTRACT_VECTOR_ELT from a vector of type VecVT |

