HomePhabricator

[VectorLegalizer] ExpandANY_EXTEND_VECTOR_INREG/ExpandZERO_EXTEND_VECTOR_INREG…

Authored by RKSimon on Jun 25 2019, 4:31 AM.

Description

[VectorLegalizer] ExpandANY_EXTEND_VECTOR_INREG/ExpandZERO_EXTEND_VECTOR_INREG - widen source vector

The *_EXTEND_VECTOR_INREG opcodes were relaxed back around rL346784 to support source vector widths that are smaller than the output - it looks like the legalizers were never updated to account for this.

This patch inserts the smaller source vector into an undef vector of the same width of the result before performing the shuffle+bitcast to correctly handle this.

Part of the yak shaving to solve the crashes from rL364264 and rL364272

llvm-svn: 364295

Details

Committed
RKSimonJun 25 2019, 4:31 AM
Parents
rG4cf18c284955: [ARM] Explicit lowering of half <-> double conversions.
Branches
Unknown
Tags
Unknown