summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2017-08-19 04:28:20 +0000
committerChandler Carruth <chandlerc@gmail.com>2017-08-19 04:28:20 +0000
commite3b3547e9f41156ebfa3d4625320e0ac7a723d8b (patch)
tree4c014d04d6c7cbedba2303503e1b08def18e2b7a /llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
parent8194a3e975e5933b8e76a71b0cc2ac3651c75246 (diff)
downloadbcm5719-llvm-e3b3547e9f41156ebfa3d4625320e0ac7a723d8b.tar.gz
bcm5719-llvm-e3b3547e9f41156ebfa3d4625320e0ac7a723d8b.zip
[x86] Refactor the CMOV conversion pass to be more flexible.
The primary thing that this accomplishes is to allow future re-use of these routines in more contexts and clarify the behavior w.r.t. loops. For example, if handling outer loops is desirable, doing so in a inside-out order becomes straight forward because it walks the loop nest itself (rather than walking the function's basic blocks) and de-couples the CMOV rewriting from the loop structure as there isn't actually anything loop-specific about this transformation. This patch should be essentially a no-op. It potentially changes the order in which we visit the inner loops, but otherwise should merely set the stage for subsequent changes. Differential Revision: https://reviews.llvm.org/D36783 llvm-svn: 311225
Diffstat (limited to 'llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud