llvm-project/llvm/test/CodeGen
Simon Pilgrim 6ce08672fb [X86][AVX] lowerShuffleAsLanePermuteAndPermute - fully populate the lane shuffle mask (PR40730)
As detailed on PR40730, we are not correctly filling in the lane shuffle mask (D53148/rL344446) - we fill in for the correct src lane but don't add it to the correct mask element, so any reference to the correct element is likely to see an UNDEF mask index.

This allows constant folding to propagate UNDEFs prior to the lane mask being (correctly) lowered to vperm2f128.

This patch fixes the issue by fully populating the lane shuffle mask - this is more than is necessary (if we only filled in the required mask elements we might be able to match other shuffle instructions - broadcasts etc.), but its the most cautious approach as this needs to be cherrypicked into the 8.0.0 release branch.

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

llvm-svn: 354117
2019-02-15 11:39:21 +00:00
..
AArch64 Relax test to check for a valid number instead of a specific number 2019-02-14 04:11:09 +00:00
AMDGPU AMDGPU: Set ABI version to 1 for code object v3 2019-02-14 23:56:04 +00:00
ARC
ARM [ARM GlobalISel] Support branches for Thumb2 2019-02-15 10:24:03 +00:00
AVR [AVR] Insert unconditional branch when inserting MBBs between blocks with fallthrough 2019-01-21 04:32:02 +00:00
BPF [BPF] [BTF] Process FileName with absolute path correctly 2019-02-02 05:54:59 +00:00
Generic [AVR] Remove unneeded XFAILs from the Generic CodeGen tests 2019-01-20 11:16:58 +00:00
Hexagon [PatternMatch] add special-case uaddo matching for increment-by-one (2nd try) 2019-02-03 16:16:48 +00:00
Inputs
Lanai
MIR [X86] Add FPCW as an implicit use on floating point load instructions. 2019-02-08 20:50:09 +00:00
MSP430 Enable integrated assembler on MSP430 by default. 2019-02-05 18:01:45 +00:00
Mips [MIPS GlobalISel] Select phi instruction for integers 2019-02-14 12:36:19 +00:00
NVPTX [NVPTX] Some nvvm.read.ptx.sreg intrinsics should have IntrInaccessibleMemOnly attribute. 2019-01-26 00:28:32 +00:00
PowerPC [PowerPC][NFC] Added tests for prologue and epilogue code gen. 2019-02-13 23:37:23 +00:00
RISCV [RISCV][NFC] Add RV64I CHECK lines to inline-asm.ll test 2019-02-14 13:09:54 +00:00
SPARC Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00
SystemZ Revert "[SystemZ] Do not emit VEXTEND or VROUND nodes without vector support." 2019-02-15 03:01:09 +00:00
Thumb [SelectionDAG] Fix return calling convention in expansion of ?MULO 2019-02-12 16:41:50 +00:00
Thumb2 [ARM] Ensure we update the correct flags in the peephole optimiser 2019-02-14 11:09:24 +00:00
WebAssembly [WebAssembly] memory.fill 2019-02-13 22:25:18 +00:00
WinCFGuard
WinEH [EH] Rename llvm.x86.seh.recoverfp intrinsic to llvm.eh.recoverfp 2019-01-16 00:37:13 +00:00
X86 [X86][AVX] lowerShuffleAsLanePermuteAndPermute - fully populate the lane shuffle mask (PR40730) 2019-02-15 11:39:21 +00:00
XCore Replace "no-frame-pointer-*" function attributes with "frame-pointer" 2019-01-14 10:55:55 +00:00