[DAGCombiner] Use the result value type in visitCONCAT_VECTORS
authorFrancis Visoiu Mistrih <francisvm@yahoo.com>
Mon, 10 Dec 2018 14:31:34 +0000 (14:31 +0000)
committerFrancis Visoiu Mistrih <francisvm@yahoo.com>
Mon, 10 Dec 2018 14:31:34 +0000 (14:31 +0000)
commit753efe3584b777ce3c0e9a35579eaa3e02609bac
tree26d576eb58c4ed3d222f0f56b2d960b74e262f44
parentcc6cf64c38f49ad203aa2252c4209e21103f06f6
[DAGCombiner] Use the result value type in visitCONCAT_VECTORS

This triggers an assert when combining concat_vectors of a bitcast of
merge_values.

With asserts disabled, it fails to select:
fatal error: error in backend: Cannot select: 0x7ff19d000e90: i32 = any_extend 0x7ff19d000ae8
  0x7ff19d000ae8: f64,ch = CopyFromReg 0x7ff19d000c20:1, Register:f64 %1
    0x7ff19d000b50: f64 = Register %1
In function: d

Differential Revision: https://reviews.llvm.org/D55507

llvm-svn: 348759
llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
llvm/test/CodeGen/X86/combine-concatvectors.ll