From d09c91ac4e2f544651921b7cb307e8aaae8948d1 Mon Sep 17 00:00:00 2001 From: Alexey Samsonov Date: Mon, 14 Oct 2013 07:36:10 +0000 Subject: [Sanitizer] Return implementation of StackTrace::CopyFrom to header git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192574 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/sanitizer_common/sanitizer_stacktrace.cc | 6 ------ lib/sanitizer_common/sanitizer_stacktrace.h | 7 ++++++- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/lib/sanitizer_common/sanitizer_stacktrace.cc b/lib/sanitizer_common/sanitizer_stacktrace.cc index 9fe6656f..f67df7e9 100644 --- a/lib/sanitizer_common/sanitizer_stacktrace.cc +++ b/lib/sanitizer_common/sanitizer_stacktrace.cc @@ -13,7 +13,6 @@ #include "sanitizer_common.h" #include "sanitizer_flags.h" -#include "sanitizer_libc.h" #include "sanitizer_procmaps.h" #include "sanitizer_stacktrace.h" #include "sanitizer_symbolizer.h" @@ -35,11 +34,6 @@ uptr StackTrace::GetPreviousInstructionPc(uptr pc) { #endif } -void StackTrace::CopyFrom(const uptr *src, uptr src_size) { - size = Min(src_size, kStackTraceMax); - internal_memcpy(trace, src, sizeof(trace[0]) * size); -} - static void PrintStackFramePrefix(uptr frame_num, uptr pc) { Printf(" #%zu 0x%zx", frame_num, pc); } diff --git a/lib/sanitizer_common/sanitizer_stacktrace.h b/lib/sanitizer_common/sanitizer_stacktrace.h index e7e244aa..c191d891 100644 --- a/lib/sanitizer_common/sanitizer_stacktrace.h +++ b/lib/sanitizer_common/sanitizer_stacktrace.h @@ -37,7 +37,12 @@ struct StackTrace { static void PrintStack(const uptr *addr, uptr size, bool symbolize, SymbolizeCallback symbolize_callback); - void CopyFrom(const uptr *src, uptr src_size); + void CopyFrom(const uptr *src, uptr src_size) { + size = src_size; + if (size > kStackTraceMax) size = kStackTraceMax; + for (uptr i = 0; i < size; i++) + trace[i] = src[i]; + } void Unwind(uptr max_depth, uptr pc, uptr bp, uptr stack_top, uptr stack_bottom, bool fast); -- cgit v1.2.3