Reimplement isPotentiallyReachable to make nocapture deduction much stronger.
authorNick Lewycky <nicholas@mxc.ca>
Sat, 27 Jul 2013 01:24:00 +0000 (01:24 +0000)
committerNick Lewycky <nicholas@mxc.ca>
Sat, 27 Jul 2013 01:24:00 +0000 (01:24 +0000)
commit81e480463d8bb57776d03cebfd083762909023f1
tree5216b12f8be6659cd3dd2c22cfee89ee80b02048
parent332af1090175aa4f6f23e7dca12ed5c23ad8300f
Reimplement isPotentiallyReachable to make nocapture deduction much stronger.
Adds unit tests for it too.

Split BasicBlockUtils into an analysis-half and a transforms-half, and put the
analysis bits into a new Analysis/CFG.{h,cpp}. Promote isPotentiallyReachable
into llvm::isPotentiallyReachable and move it into Analysis/CFG.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187283 91177308-0d34-0410-b5e6-96231b3b80d8
13 files changed:
include/llvm/Analysis/CFG.h [new file with mode: 0644]
include/llvm/Transforms/Utils/BasicBlockUtils.h
lib/Analysis/AliasAnalysis.cpp
lib/Analysis/CFG.cpp [new file with mode: 0644]
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
lib/Transforms/Scalar/GVN.cpp
lib/Transforms/Scalar/JumpThreading.cpp
lib/Transforms/Utils/BasicBlockUtils.cpp
lib/Transforms/Utils/BreakCriticalEdges.cpp
lib/Transforms/Utils/DemoteRegToStack.cpp
unittests/Analysis/CFGTest.cpp [new file with mode: 0644]
unittests/Analysis/CMakeLists.txt
unittests/Analysis/Makefile