llvm-6502/lib
Chandler Carruth 6bb093bbe7 [x86] Rewrite a core part of the new vector shuffle lowering to handle
one pesky test case correctly.

This test case caused the old code to infloop occilating between solving
the low-half and the high-half. The 'side balancing' part of
single-input v8 shuffle lowering didn't handle the one pattern which can
cause it to occilate. Fortunately the fuzz testing found this case.
Unfortuately it was *terrible* to handle. I'm really sorry for the
amount and density of the code here, I'd love suggestions on how to
simplify it. I feel like there *must* be a simpler form here, but after
a lot of days I've not found it. This is the only one I've found that
even works. I've added the one pesky test case along with some nice
comments explaining the core problem that we have to solve here.

So far this has survived approximately 32k test cases. More strenuous
fuzzing commencing.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@215519 91177308-0d34-0410-b5e6-96231b3b80d8
2014-08-13 01:25:45 +00:00
..
Analysis In LVI(Lazy Value Info), originally value on a BB can only be caculated once, 2014-08-11 05:02:04 +00:00
AsmParser Remove dead code in condition 2014-08-05 18:22:58 +00:00
Bitcode BitcodeReader: Fix non-determinism in use-list order 2014-08-05 17:49:48 +00:00
CodeGen [PowerPC] Implement PPCTargetLowering::getTgtMemIntrinsic 2014-08-13 01:15:40 +00:00
DebugInfo
ExecutionEngine [MCJIT] Simplify immediate decoding code in the RuntimeDyldMachO hierarchy. 2014-08-08 23:12:22 +00:00
IR Don't upgrade global constructors when reading bitcode 2014-08-12 16:46:37 +00:00
IRReader Update the MemoryBuffer API to use ErrorOr. 2014-07-06 17:43:13 +00:00
LineEditor
Linker Don't upgrade global constructors when reading bitcode 2014-08-12 16:46:37 +00:00
LTO Don't internalize all but main by default. 2014-08-05 20:10:38 +00:00
MC MC: Diagnose an unexpected token in COFF .section instead of asserting 2014-08-11 18:34:43 +00:00
Object AArch64: add support for dynamic-loader relocations 2014-08-11 10:10:27 +00:00
Option
ProfileData Coverage: add HasCodeBefore flag to a mapping region. 2014-08-04 18:00:51 +00:00
Support ADT: remove MinGW32 and Cygwin OSType enum 2014-08-09 23:12:20 +00:00
TableGen [tablegen] - Eliminate memory leaks in TGParser.cpp 2014-08-08 00:29:54 +00:00
Target [x86] Rewrite a core part of the new vector shuffle lowering to handle 2014-08-13 01:25:45 +00:00
Transforms Allwo bitcast + struct GEP transform to work with addrspacecast 2014-08-12 19:46:13 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile