llvm-project/llvm/lib/Transforms
James Molloy 1e583704f5 [LV] Don't bail to MiddleBlock if a runtime check fails, bail to ScalarPH instead
We were bailing to two places if our runtime checks failed. If the initial overflow check failed, we'd go to ScalarPH. If any other check failed, we'd go to MiddleBlock. This caused us to have to have an extra PHI per induction and reduction as the vector loop's exit block was not dominated by its latch.

There's no need to have this behavior - if we just always go to ScalarPH we can get rid of a bunch of complexity.

llvm-svn: 246637
2015-09-02 10:15:39 +00:00
..
Hello Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
IPO Move createEliminateAvailableExternallyPass earlier in the pass pipeline 2015-09-02 06:34:11 +00:00
InstCombine [InstCombine] Fix PR24605. 2015-08-28 19:09:31 +00:00
Instrumentation Make variable argument intrinsics behave correctly in a Win64 CC function. 2015-08-25 23:27:41 +00:00
ObjCARC [ARC] Pull the ObjC ARC components that really serve the role of 2015-08-20 08:06:03 +00:00
Scalar [JumpThreading] make jump threading respect convergent annotation. 2015-08-31 06:10:27 +00:00
Utils Optimize memcmp(x,y,n)==0 for small n and suitably aligned x/y. 2015-08-28 18:30:18 +00:00
Vectorize [LV] Don't bail to MiddleBlock if a runtime check fails, bail to ScalarPH instead 2015-09-02 10:15:39 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile