1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-23 13:02:52 +02:00
llvm-mirror/test/CodeGen
Simon Pilgrim b9be2425fd [X86][AVX] Peek through bitcasts to find the source of broadcasts (reapplied)
AVX1 can only broadcast vectors as floats/doubles, so for 256-bit vectors we insert bitcasts if we are shuffling v8i32/v4i64 types. Unfortunately the presence of these bitcasts prevents the current broadcast lowering code from peeking through cases where we have concatenated / extracted vectors to create the 256-bit vectors.

This patch allows us to peek through bitcasts as long as the number of elements doesn't change (i.e. element bitwidth is the same) so the broadcast index is not affected.

Note this bitcast peek is different from the stage later on which doesn't care about the type and is just trying to find a load node.

As we're being more aggressive with bitcasts, we also need to ensure that the broadcast type is correctly bitcasted

Differential Revision: http://reviews.llvm.org/D21660

llvm-svn: 274013
2016-06-28 13:24:05 +00:00
..
AArch64 MachineScheduler: Fully compare top/bottom candidates 2016-06-25 00:23:00 +00:00
AMDGPU AMDGPU: Fix out of bounds indirect indexing errors 2016-06-28 01:09:00 +00:00
ARM NFC. Fix popular typo in comment 'deferencing' --> 'dereferencing'. 2016-06-28 01:45:05 +00:00
BPF
Generic
Hexagon [Hexagon] Equally-sized vectors are equivalent in ISel (except vNi1) 2016-06-27 15:08:22 +00:00
Inputs
Lanai
Mips [mips][micromips] Implement LD, LLD, LWU, SD, DSRL, DSRL32 and DSRLV instructions 2016-06-27 08:23:28 +00:00
MIR
MSP430
NVPTX Only emit extension for zeroext/signext arguments if type is < 32 bits 2016-06-27 20:22:22 +00:00
PowerPC MachineScheduler: Fully compare top/bottom candidates 2016-06-25 00:23:00 +00:00
SPARC Codegen: Fix broken assumption in Tail Merge. 2016-06-24 18:16:36 +00:00
SystemZ [SystemZ] Avoid generating 2 XOR instructions for (and (xor x, -1), y) 2016-06-27 15:55:30 +00:00
Thumb
Thumb2 Codegen: Fix broken assumption in Tail Merge. 2016-06-24 18:16:36 +00:00
WebAssembly
WinEH
X86 [X86][AVX] Peek through bitcasts to find the source of broadcasts (reapplied) 2016-06-28 13:24:05 +00:00
XCore