llvm-project/llvm/lib
Alexey Bataev 4a45efa431 [SLP] Preserve IR flags when vectorizing horizontal reductions.
Summary:
The SLP vectorizer should propagate IR-level optimization hints/flags
(nsw, nuw, exact, fast-math) when converting scalar horizontal
reductions instructions into vectors, just like for other vectorized
instructions.
It doe not include IR propagation for extra arguments, we need to handle
original scalar operations for extra args to propagate correct flags.

Reviewers: mkuper, mzolotukhin, hfinkel

Subscribers: llvm-commits

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

llvm-svn: 296614
2017-03-01 12:43:39 +00:00
..
Analysis [SLP] Fixes the bug due to absence of in order uses of scalars which needs to be available 2017-03-01 03:51:54 +00:00
AsmParser Change debug-info-for-profiling from a TargetOption to a function attribute. 2017-02-01 22:45:09 +00:00
Bitcode Move symbols from the global namespace into (anonymous) namespaces. NFC. 2017-02-11 11:06:55 +00:00
CodeGen [CodeGen] Remove dead FastISel code after SDAG emitted a tailcall. 2017-03-01 00:43:42 +00:00
DebugInfo [DebugInfo] Fix some Include What You Use warnings; other minor fixes (NFC). 2017-03-01 01:14:23 +00:00
Demangle Add support for demangling C++11 thread_local variables. 2017-01-31 15:56:36 +00:00
ExecutionEngine [Orc] Rename ObjectLinkingLayer -> RTDyldObjectLinkingLayer. 2017-02-20 05:45:14 +00:00
Fuzzer [libFuzzer] remove usage of the old coverage instrumentation 2017-02-28 23:23:48 +00:00
IR Keep attributes, calling convention, etc, when remangling intrinsic 2017-03-01 01:49:13 +00:00
IRReader Timer: Track name and description. 2016-11-18 19:43:18 +00:00
LTO [LTO] Add ability to emit assembly to new LTO API 2017-02-15 20:36:36 +00:00
LibDriver LibDriver: Allow resource files to be archive members. 2016-12-15 19:37:46 +00:00
LineEditor
Linker IRMover: Merge flags LinkModuleInlineAsm and IsPerformingImport. 2017-02-03 17:01:14 +00:00
MC [DWARFv5] llvm-mc support for new unit header. 2017-02-28 23:40:46 +00:00
Object Actually add error handling to unpacking the dyld compact bind and 2017-02-28 21:47:07 +00:00
ObjectYAML Move symbols from the global namespace into (anonymous) namespaces. NFC. 2017-02-11 11:06:55 +00:00
Option Cleanup dump() functions. 2017-01-28 02:02:38 +00:00
Passes Add call branch annotation for ICP promoted direct call in SamplePGO mode. 2017-02-23 22:15:18 +00:00
ProfileData [PGO] Fix a bug in reading text format value profile. 2017-02-27 21:42:39 +00:00
Support Process tilde in llvm::sys::path::native 2017-03-01 09:38:15 +00:00
TableGen Use print() instead of dump() in code 2017-01-28 02:47:46 +00:00
Target [ARM] Fix parsing of special register masks 2017-03-01 10:51:04 +00:00
Transforms [SLP] Preserve IR flags when vectorizing horizontal reductions. 2017-03-01 12:43:39 +00:00
XRay [XRAY] [x86_64] Adding a Flight Data filetype reader to the llvm-xray Trace implementation. 2017-02-17 01:47:16 +00:00
CMakeLists.txt [XRay] Define the library for XRay trace logs 2017-01-11 06:39:09 +00:00
LLVMBuild.txt Add an c++ itanium demangler to llvm. 2016-09-06 19:16:48 +00:00