llvm-6502/lib
Sanjay Patel b89304eb7c Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802).
The SLP vectorizer should propagate IR-level optimization hints/flags (nsw, nuw, exact, fast-math)
when converting scalar instructions into vectors. But this isn't a simple copy - we need to take
the intersection (the logical 'and') of the sets of flags on the scalars.

The solution is further complicated because we can have non-uniform (non-SIMD) vector ops after:
http://reviews.llvm.org/D4015
http://llvm.org/viewvc/llvm-project?view=revision&revision=211339

The vast majority of changed files are existing tests that were not propagating IR flags, but I've
also added a new test file for focused testing of IR flag possibilities.

Differential Revision: http://reviews.llvm.org/D5172



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@217051 91177308-0d34-0410-b5e6-96231b3b80d8
2014-09-03 17:40:30 +00:00
..
Analysis Add override to overriden virtual methods, remove virtual keywords. 2014-09-03 11:41:21 +00:00
AsmParser Fix typos in comments, NFC 2014-08-29 21:53:01 +00:00
Bitcode Pass a && to getLazyBitcodeModule. 2014-09-03 17:31:46 +00:00
CodeGen Reinstate "Nuke the old JIT." 2014-09-02 22:28:02 +00:00
DebugInfo Don't own the buffer in object::Binary. 2014-08-19 18:44:46 +00:00
ExecutionEngine Add override to overriden virtual methods, remove virtual keywords. 2014-09-03 11:41:21 +00:00
IR Change name of copyFlags() to copyIRFlags(). Add convenience method for logical 'and' of all flags. NFC. 2014-09-03 01:06:50 +00:00
IRReader Pass a && to getLazyBitcodeModule. 2014-09-03 17:31:46 +00:00
LineEditor
Linker Set comdats when lazily linking functions. 2014-08-15 20:17:08 +00:00
LTO unique_ptrify LTOCodeGenerator::NativeObjectFile 2014-09-02 18:21:06 +00:00
MC Add override to overriden virtual methods, remove virtual keywords. 2014-09-03 11:41:21 +00:00
Object Pass a && to getLazyBitcodeModule. 2014-09-03 17:31:46 +00:00
Option Fix PR17239 by changing the semantics of the RemainingArgsClass Option kind 2014-08-22 19:29:17 +00:00
ProfileData llvm-cov: add code coverage tool that's based on coverage mapping format and clang's pgo. 2014-08-22 22:56:03 +00:00
Support Cleaning up remaining static initializers in Signals.inc 2014-09-02 23:48:13 +00:00
TableGen Comment only: Annotate loop as per mailing list discussion 2014-08-29 22:43:30 +00:00
Target R600/SI: Add a pattern for i64 and in a branch 2014-09-03 15:22:41 +00:00
Transforms Preserve IR flags (nsw, nuw, exact, fast-math) in SLP vectorizer (PR20802). 2014-09-03 17:40:30 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile