[X86][AVX] Match broadcast loads through a bitcast
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 9 Jan 2016 20:59:39 +0000 (20:59 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Sat, 9 Jan 2016 20:59:39 +0000 (20:59 +0000)
commit95d397cf33ff6940bfdc0d82fc2472387abc5b3d
tree0273892062aecbe00334cedf1ef55cc8ca8dbfa1
parentd8eb9f704c00d33550f730a6a8d0070634777b1f
[X86][AVX] Match broadcast loads through a bitcast

AVX1 v8i32/v4i64 shuffles are bitcasted to v8f32/v4f64, this patch peeks through any bitcast to check for a load node to allow broadcasts to occur.

This is a re-commit of r257055 after r257264 fixed 32-bit broadcast loads of i64 scalars.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@257266 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/2012-01-12-extract-sv.ll
test/CodeGen/X86/avx-vbroadcast.ll