[compiler-rt] r306746 - Merge
Evgenii Stepanov via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 29 15:27:28 PDT 2017
Something is not right with the commit message.
On Thu, Jun 29, 2017 at 2:54 PM, Alex Shlyapnikov via llvm-commits <
llvm-commits at lists.llvm.org> wrote:
> Author: alekseyshl
> Date: Thu Jun 29 14:54:36 2017
> New Revision: 306746
>
> URL: http://llvm.org/viewvc/llvm-project?rev=306746&view=rev
> Log:
> Merge
>
> Modified:
> compiler-rt/trunk/lib/asan/asan_allocator.cc
> compiler-rt/trunk/lib/msan/msan_allocator.cc
> compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator.cc
> compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator.h
> compiler-rt/trunk/lib/tsan/rtl/tsan_mman.cc
>
> Modified: compiler-rt/trunk/lib/asan/asan_allocator.cc
> URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/
> asan/asan_allocator.cc?rev=306746&r1=306745&r2=306746&view=diff
> ============================================================
> ==================
> --- compiler-rt/trunk/lib/asan/asan_allocator.cc (original)
> +++ compiler-rt/trunk/lib/asan/asan_allocator.cc Thu Jun 29 14:54:36 2017
> @@ -635,7 +635,7 @@ struct Allocator {
> }
>
> void *Calloc(uptr nmemb, uptr size, BufferedStackTrace *stack) {
> - if (CallocShouldReturnNullDueToOverflow(size, nmemb))
> + if (CheckForCallocOverflow(size, nmemb))
> return AsanAllocator::FailureHandler::OnBadRequest();
> void *ptr = Allocate(nmemb * size, 8, stack, FROM_MALLOC, false);
> // If the memory comes from the secondary allocator no need to clear
> it
>
> Modified: compiler-rt/trunk/lib/msan/msan_allocator.cc
> URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/
> msan/msan_allocator.cc?rev=306746&r1=306745&r2=306746&view=diff
> ============================================================
> ==================
> --- compiler-rt/trunk/lib/msan/msan_allocator.cc (original)
> +++ compiler-rt/trunk/lib/msan/msan_allocator.cc Thu Jun 29 14:54:36 2017
> @@ -195,7 +195,7 @@ void MsanDeallocate(StackTrace *stack, v
> }
>
> void *MsanCalloc(StackTrace *stack, uptr nmemb, uptr size) {
> - if (CallocShouldReturnNullDueToOverflow(size, nmemb))
> + if (CheckForCallocOverflow(size, nmemb))
> return Allocator::FailureHandler::OnBadRequest();
> return MsanReallocate(stack, nullptr, nmemb * size, sizeof(u64), true);
> }
>
> Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator.cc
> URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/
> sanitizer_common/sanitizer_allocator.cc?rev=306746&r1=
> 306745&r2=306746&view=diff
> ============================================================
> ==================
> --- compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator.cc
> (original)
> +++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator.cc Thu Jun
> 29 14:54:36 2017
> @@ -160,7 +160,7 @@ void *InternalRealloc(void *addr, uptr s
> }
>
> void *InternalCalloc(uptr count, uptr size, InternalAllocatorCache
> *cache) {
> - if (CallocShouldReturnNullDueToOverflow(count, size))
> + if (CheckForCallocOverflow(count, size))
> return InternalAllocator::FailureHandler::OnBadRequest();
> void *p = InternalAlloc(count * size, cache);
> if (p) internal_memset(p, 0, count * size);
> @@ -202,7 +202,7 @@ void SetLowLevelAllocateCallback(LowLeve
> low_level_alloc_callback = callback;
> }
>
> -bool CallocShouldReturnNullDueToOverflow(uptr size, uptr n) {
> +bool CheckForCallocOverflow(uptr size, uptr n) {
> if (!size) return false;
> uptr max = (uptr)-1L;
> return (max / size) < n;
>
> Modified: compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator.h
> URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/
> sanitizer_common/sanitizer_allocator.h?rev=306746&r1=
> 306745&r2=306746&view=diff
> ============================================================
> ==================
> --- compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator.h
> (original)
> +++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator.h Thu Jun
> 29 14:54:36 2017
> @@ -56,8 +56,10 @@ struct NoOpMapUnmapCallback {
> // Callback type for iterating over chunks.
> typedef void (*ForEachChunkCallback)(uptr chunk, void *arg);
>
> -// Returns true if calloc(size, n) should return 0 due to overflow in
> size*n.
> -bool CallocShouldReturnNullDueToOverflow(uptr size, uptr n);
> +// Returns true if calloc(size, n) call overflows on size*n calculation.
> +// The caller should "return POLICY::OnBadRequest();" where POLICY is the
> +// current allocator failure handling policy.
> +bool CheckForCallocOverflow(uptr size, uptr n);
>
> #include "sanitizer_allocator_size_class_map.h"
> #include "sanitizer_allocator_stats.h"
>
> Modified: compiler-rt/trunk/lib/tsan/rtl/tsan_mman.cc
> URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/
> tsan/rtl/tsan_mman.cc?rev=306746&r1=306745&r2=306746&view=diff
> ============================================================
> ==================
> --- compiler-rt/trunk/lib/tsan/rtl/tsan_mman.cc (original)
> +++ compiler-rt/trunk/lib/tsan/rtl/tsan_mman.cc Thu Jun 29 14:54:36 2017
> @@ -162,7 +162,7 @@ void *user_alloc(ThreadState *thr, uptr
> }
>
> void *user_calloc(ThreadState *thr, uptr pc, uptr size, uptr n) {
> - if (CallocShouldReturnNullDueToOverflow(size, n))
> + if (CheckForCallocOverflow(size, n))
> return Allocator::FailureHandler::OnBadRequest();
> void *p = user_alloc(thr, pc, n * size);
> if (p)
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170629/feba4b35/attachment.html>
More information about the llvm-commits
mailing list