]> granicus.if.org Git - llvm/commit
Merging r278573 (and r277399, r278157, r278569):
authorHans Wennborg <hans@hanshq.net>
Mon, 15 Aug 2016 16:06:31 +0000 (16:06 +0000)
committerHans Wennborg <hans@hanshq.net>
Mon, 15 Aug 2016 16:06:31 +0000 (16:06 +0000)
commit3e3f1602c5b13e6c861abb4044f9cefccca04e94
treed2e3f7917283991340b124147b51a8dbf8948695
parent738de9c7a2c1019dcaeb5b5e0f4592018b9058b2
Merging r278573 (and r277399, r278157, r278569):

------------------------------------------------------------------------
r278573 | timshen | 2016-08-12 15:47:13 -0700 (Fri, 12 Aug 2016) | 8 lines

[LoopVectorize] Detect loops in the innermost loop before creating InnerLoopVectorizer

InnerLoopVectorizer shouldn't handle a loop with cycles inside the loop
body, even if that cycle isn't a natural loop.

Fixes PR28541.

Differential Revision: https://reviews.llvm.org/D22952
------------------------------------------------------------------------

------------------------------------------------------------------------
r277399 | timshen | 2016-08-01 15:32:20 -0700 (Mon, 01 Aug 2016) | 9 lines

[ADT] NFC: Generalize GraphTraits requirement of "NodeType *" in interfaces to "NodeRef", and migrate SCCIterator.h to use NodeRef

Summary: By generalize the interface, users are able to inject more flexible Node token into the algorithm, for example, a pair of vector<Node>* and index integer. Currently I only migrated SCCIterator to use NodeRef, but more is coming. It's a NFC.

Reviewers: dblaikie, chandlerc

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D22937
------------------------------------------------------------------------

------------------------------------------------------------------------
r278157 | timshen | 2016-08-09 13:23:13 -0700 (Tue, 09 Aug 2016) | 7 lines

[ADT] Change iterator_adaptor_base's default template arguments to forward more underlying typedefs

Reviewers: chandlerc

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D23217
------------------------------------------------------------------------

------------------------------------------------------------------------
r278569 | timshen | 2016-08-12 15:03:28 -0700 (Fri, 12 Aug 2016) | 3 lines

[ADT] Add filter_iterator for filtering elements

Differential Revision: https://reviews.llvm.org/D22951
------------------------------------------------------------------------

git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_39@278674 91177308-0d34-0410-b5e6-96231b3b80d8
13 files changed:
include/llvm/ADT/GraphTraits.h
include/llvm/ADT/SCCIterator.h
include/llvm/ADT/STLExtras.h
include/llvm/ADT/iterator.h
include/llvm/Analysis/CallGraph.h
include/llvm/CodeGen/MachineBasicBlock.h
include/llvm/IR/CFG.h
lib/Analysis/BlockFrequencyInfoImpl.cpp
lib/Transforms/IPO/FunctionAttrs.cpp
lib/Transforms/Vectorize/LoopVectorize.cpp
test/Transforms/LoopVectorize/pr28541.ll [new file with mode: 0644]
unittests/ADT/SCCIteratorTest.cpp
unittests/Support/IteratorTest.cpp