summaryrefslogtreecommitdiff
path: root/lib/asan/asan_thread.h
diff options
context:
space:
mode:
authorKostya Serebryany <kcc@google.com>2013-10-18 14:50:44 +0000
committerKostya Serebryany <kcc@google.com>2013-10-18 14:50:44 +0000
commit6d95869fa900da9ddd68e15e2aa065854cfa176b (patch)
tree56c2d87779d8736d1ca4016d6974f89424f61670 /lib/asan/asan_thread.h
parentacd18b94d494ea946599ae40425ef9ee670b0183 (diff)
downloadcompiler-rt-6d95869fa900da9ddd68e15e2aa065854cfa176b.tar.gz
compiler-rt-6d95869fa900da9ddd68e15e2aa065854cfa176b.tar.bz2
compiler-rt-6d95869fa900da9ddd68e15e2aa065854cfa176b.tar.xz
[asan] reduce the size of AsanThreadContext by storing the stack trace in the stack depot
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192979 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/asan/asan_thread.h')
-rw-r--r--lib/asan/asan_thread.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/asan/asan_thread.h b/lib/asan/asan_thread.h
index 5d0a6c94..11771ecd 100644
--- a/lib/asan/asan_thread.h
+++ b/lib/asan/asan_thread.h
@@ -38,12 +38,12 @@ class AsanThreadContext : public ThreadContextBase {
: ThreadContextBase(tid),
announced(false),
destructor_iterations(kPthreadDestructorIterations),
+ stack_id(0),
thread(0) {
- internal_memset(&stack, 0, sizeof(stack));
}
bool announced;
- int destructor_iterations;
- StackTrace stack;
+ u8 destructor_iterations;
+ u32 stack_id;
AsanThread *thread;
void OnCreated(void *arg);
@@ -51,7 +51,7 @@ class AsanThreadContext : public ThreadContextBase {
};
// AsanThreadContext objects are never freed, so we need many of them.
-COMPILER_CHECK(sizeof(AsanThreadContext) <= 4096);
+COMPILER_CHECK(sizeof(AsanThreadContext) <= 256);
// AsanThread are stored in TSD and destroyed when the thread dies.
class AsanThread {