1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 12:33:33 +02:00
llvm-mirror/lib
Zvi Rackover e274f9ca04 InstructionSimplify: Relanding r301766
Summary:
Re-applying r301766 with a fix to a typo and a regression test.

The log message for r301766 was:
==================================================================================
    InstructionSimplify: Canonicalize shuffle operands. NFC-ish.

    Summary:
     Apply canonicalization rules:
        1. Input vectors with no elements selected from can be replaced with undef.
        2. If only one input vector is constant it shall be the second one.

    This allows constant-folding to cover more ad-hoc simplifications that
    were in place and avoid duplication for RHS and LHS checks.

    There are more rules we may want to add in the future when we see a
    justification. e.g. mask elements that select undef elements can be
    replaced with undef.
==================================================================================

Reviewers: spatel, RKSimon

Reviewed By: spatel

Subscribers: llvm-commits

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

llvm-svn: 302373
2017-05-07 18:16:37 +00:00
..
Analysis InstructionSimplify: Relanding r301766 2017-05-07 18:16:37 +00:00
AsmParser AMDGPU: Add AMDGPU_HS calling convention 2017-05-02 15:41:10 +00:00
Bitcode Re-apply r302108, "IR: Use pointers instead of GUIDs to represent edges in the module summary. NFCI." 2017-05-04 18:03:25 +00:00
CodeGen [DAGCombiner] If ISD::ABS is legal/custom, use it directly instead of canonicalizing first. 2017-05-06 13:44:42 +00:00
DebugInfo [CodeView] Reserve TypeDatabase records up front. 2017-05-05 22:02:37 +00:00
Demangle
ExecutionEngine Make llvm-rtdlyd -check preserve automatic address mappings made by RuntimeDyld. 2017-05-07 17:19:53 +00:00
Fuzzer [libFuzzer] exit without running atexit handlers in libfuzzer's crash handler 2017-05-03 20:31:19 +00:00
IR [IR] Fix some Clang-tidy modernize-use-using warnings; other minor fixes (NFC). 2017-05-05 22:30:37 +00:00
IRReader
LibDriver Fix some ArgList uses after API change in r300135. 2017-04-12 23:43:58 +00:00
LineEditor
Linker [Linker] Provide callback for internalization 2017-03-13 18:08:11 +00:00
LTO Re-apply r302108, "IR: Use pointers instead of GUIDs to represent edges in the module summary. NFCI." 2017-05-04 18:03:25 +00:00
MC [LLVM][inline-asm][Altmacor] Altmacro string delimiter '<..>' 2017-05-04 10:37:00 +00:00
Object [WebAssembly] Add wasm symbol table support to llvm-objdump 2017-05-04 19:32:43 +00:00
ObjectYAML [WebAssembly] Add ObjectYAML support for wasm name section 2017-05-05 18:12:34 +00:00
Option ArgList: cache index ranges containing arguments with each ID 2017-04-12 23:19:51 +00:00
Passes [PM] Add ProfileSummaryAnalysis as a required pass in the new pipeline. 2017-05-04 16:58:45 +00:00
ProfileData [ProfileData] Unify getInstrProf*SectionName helpers 2017-04-15 00:09:57 +00:00
Support If posix_fallocate returns EOPNOTSUPP, fallback to ftruncate. 2017-05-05 17:55:58 +00:00
TableGen
Target [X86][AVX512] Relax assertion and just exit combine for unsupported types (PR32907) 2017-05-06 20:53:52 +00:00
Transforms [InstSimplify] use ConstantRange to simplify or-of-icmps 2017-05-07 15:11:40 +00:00
XRay [XRay] - Fix spelling error to test commit access. 2017-04-06 03:32:01 +00:00
CMakeLists.txt
LLVMBuild.txt