Make TargetLowering::getTypeConversion more resilient against odd illegal MVTs.
authorBenjamin Kramer <benny.kra@googlemail.com>
Wed, 19 Dec 2012 14:34:28 +0000 (14:34 +0000)
committerBenjamin Kramer <benny.kra@googlemail.com>
Wed, 19 Dec 2012 14:34:28 +0000 (14:34 +0000)
commitae0bb610532d025e1d0eb2cfe7b198a4a77b1635
tree9eda16b33a3349a407cc6098b70e475247b413ec
parentaa7b27801c393c023d41f3492d60258abee049fe
Make TargetLowering::getTypeConversion more resilient against odd illegal MVTs.

- An MVT can become an EVT when being split (e.g. v2i8 -> v1i8, the latter doesn't exist)
- Return the scalar value when an MVT is scalarized (v1i64 -> i64)

Fixes PR14639ff.

llvm-svn: 170546
llvm/include/llvm/Target/TargetLowering.h
llvm/test/Transforms/LoopVectorize/X86/no-vector.ll [new file with mode: 0644]