Go to file
Chandler Carruth 26cb9b8d2d [x86] Teach the new vector shuffle lowering to be even more aggressive
in exposing the scalar value to the broadcast DAG fragment so that we
can catch even reloads and fold them into the broadcast.

This is somewhat magical I'm afraid but seems to work. It is also what
the old lowering did, and I've switched an old test to run both
lowerings demonstrating that we get the same result.

Unlike the old code, I'm not lowering f32 or f64 scalars through this
path when we only have AVX1. The target patterns include pretty heinous
code to re-cast those as shuffles when the scalar happens to not be
spilled because AVX1 provides no broadcast mechanism from registers
what-so-ever. This is terribly brittle. I'd much rather go through our
generic lowering code to get this. If needed, we can add a peephole to
get even more opportunities to broadcast-from-spill-slots that are
exposed post-RA, but my suspicion is this just doesn't matter that much.

llvm-svn: 218734
2014-10-01 03:19:43 +00:00
clang Update uninitialized tests to ensure that field initialization has the 2014-09-30 23:46:05 +00:00
clang-tools-extra [clang-tidy] Updated documentation 2014-09-27 21:47:01 +00:00
compiler-rt [compiler-rt] Re-enable the use of -gmlt for ASan tests on Darwin 2014-09-30 23:07:45 +00:00
debuginfo-tests relax testcase for LLDB output format compatibility. 2014-03-19 23:06:18 +00:00
libclc Remove more redundant semi-colons 2014-09-18 09:23:40 +00:00
libcxx Mark module atomic as cplusplus11. 2014-09-24 04:44:54 +00:00
libcxxabi Adding ABI support for __cxa_throw_bad_array_new_length. 2014-09-11 17:26:43 +00:00
lld [PECOFF] Fix x64 export table. 2014-10-01 01:39:34 +00:00
lldb Not all processes have a Dynamic Loader. Be sure to check that it exists before using it. 2014-09-30 20:33:25 +00:00
llvm [x86] Teach the new vector shuffle lowering to be even more aggressive 2014-10-01 03:19:43 +00:00
openmp Fix a crash that occurred under obscure circumstances during library shutdown 2014-09-03 11:34:33 +00:00
polly Disable runtime alias checks when we ignore aliasing. 2014-09-29 17:06:29 +00:00