diff options
| author | Artur Pilipenko <apilipenko@azulsystems.com> | 2016-01-17 12:35:29 +0000 |
|---|---|---|
| committer | Artur Pilipenko <apilipenko@azulsystems.com> | 2016-01-17 12:35:29 +0000 |
| commit | f84dc06e5b4ba4f96fb6ef24b2df848c512f41d6 (patch) | |
| tree | ef60cf0b47410ba11641cd6ca9e56c9f3b070dc6 /llvm/lib/Analysis | |
| parent | e1f273d900b004ac1d1331794079973f8949e78f (diff) | |
| download | bcm5719-llvm-f84dc06e5b4ba4f96fb6ef24b2df848c512f41d6.tar.gz bcm5719-llvm-f84dc06e5b4ba4f96fb6ef24b2df848c512f41d6.zip | |
Push isDereferenceableAndAlignedPointer down into isSafeToLoadUnconditionally
Reviewed By: reames
Differential Revision: http://reviews.llvm.org/D16226
llvm-svn: 258010
Diffstat (limited to 'llvm/lib/Analysis')
| -rw-r--r-- | llvm/lib/Analysis/Loads.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/Analysis/Loads.cpp b/llvm/lib/Analysis/Loads.cpp index bad745a992d..5b2113a19ee 100644 --- a/llvm/lib/Analysis/Loads.cpp +++ b/llvm/lib/Analysis/Loads.cpp @@ -71,6 +71,9 @@ bool llvm::isSafeToLoadUnconditionally(Value *V, unsigned Align, Align = DL.getABITypeAlignment(V->getType()->getPointerElementType()); assert(isPowerOf2_32(Align)); + if (isDereferenceableAndAlignedPointer(V, Align, DL)) + return true; + int64_t ByteOffset = 0; Value *Base = V; Base = GetPointerBaseWithConstantOffset(V, ByteOffset, DL); |

