llvm-6502/lib
Chandler Carruth 21b69296fb [x86] Fix yet another bug in the new vector shuffle lowering's handling
of widening masks.

We can't widen a zeroing mask unless both elements that would be merged
are either zeroed or undef. This is the only way to widen a mask if it
has a zeroed element.

Also clean up the code here by ordering the checks in a more logical way
and by using the symoblic values for undef and zero. I'm actually torn
on using the symbolic values because the existing code is littered with
the assumption that -1 is undef, and moreover that entries '< 0' are the
special entries. While that works with the values given to these
constants, using the symbolic constants actually makes it a bit more
opaque why this is the case.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218575 91177308-0d34-0410-b5e6-96231b3b80d8
2014-09-28 03:30:25 +00:00
..
Analysis Ignore annotation function calls in cost computation 2014-09-26 17:48:40 +00:00
AsmParser
Bitcode
CodeGen [AArch64] Redundant store instructions should be removed as dead code 2014-09-27 17:02:54 +00:00
DebugInfo Object: BSS/virtual sections don't have contents 2014-09-26 22:32:16 +00:00
ExecutionEngine
IR
IRReader
LineEditor
Linker
LTO
MC WinCOFFObjectWriter.cpp: make write_uint32_le more efficient 2014-09-28 00:22:27 +00:00
Object Object: BSS/virtual sections don't have contents 2014-09-26 22:32:16 +00:00
Option
ProfileData llvm-cov: Combine segments that cover the same location 2014-09-25 00:34:18 +00:00
Support Fix llvm::huge_valf multiple initializations with Visual C++. 2014-09-27 14:41:29 +00:00
TableGen Refactoring: raw pointer -> unique_ptr 2014-09-25 19:55:58 +00:00
Target [x86] Fix yet another bug in the new vector shuffle lowering's handling 2014-09-28 03:30:25 +00:00
Transforms [IndVar] Don't widen loop compare unless IV user is sign extended. 2014-09-26 20:05:35 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile