diff options
author | Kostya Serebryany <kcc@google.com> | 2012-05-11 14:42:24 +0000 |
---|---|---|
committer | Kostya Serebryany <kcc@google.com> | 2012-05-11 14:42:24 +0000 |
commit | 07c48051753fca58156a5f0421836350bc6e5de8 (patch) | |
tree | ff6846414eb9faeee8ff553a016719fe200b1f33 | |
parent | 09de6ae399b91c0a7c3b33a99edc7b918eef1785 (diff) | |
download | bcm5719-llvm-07c48051753fca58156a5f0421836350bc6e5de8.tar.gz bcm5719-llvm-07c48051753fca58156a5f0421836350bc6e5de8.zip |
[tsan] run more kinds of builds as presubmit test (and fix gcc debug build)
llvm-svn: 156616
-rw-r--r-- | compiler-rt/lib/tsan/Makefile.old | 11 | ||||
-rw-r--r-- | compiler-rt/lib/tsan/rtl/Makefile.old | 9 | ||||
-rw-r--r-- | compiler-rt/lib/tsan/rtl/tsan_clock.h | 10 | ||||
-rw-r--r-- | compiler-rt/lib/tsan/rtl/tsan_defs.h | 2 | ||||
-rw-r--r-- | compiler-rt/lib/tsan/rtl/tsan_rtl.h | 4 | ||||
-rw-r--r-- | compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cc | 4 |
6 files changed, 24 insertions, 16 deletions
diff --git a/compiler-rt/lib/tsan/Makefile.old b/compiler-rt/lib/tsan/Makefile.old index 7506396da8f..642cd60287c 100644 --- a/compiler-rt/lib/tsan/Makefile.old +++ b/compiler-rt/lib/tsan/Makefile.old @@ -50,18 +50,23 @@ test: $(LIBTSAN) tsan_test run: all (ulimit -s 8192; ./tsan_test) + ./output_tests/test_output.sh presubmit: $(MAKE) -f Makefile.old lint -j 4 # Debug build with clang. $(MAKE) -f Makefile.old clean $(MAKE) -f Makefile.old run DEBUG=1 -j 16 CC=clang CXX=clang++ - ./output_tests/test_output.sh - # Release build gcc + # Release build with clang. + $(MAKE) -f Makefile.old clean + $(MAKE) -f Makefile.old run DEBUG=0 -j 16 CC=clang CXX=clang++ + # Debug build with gcc + $(MAKE) -f Makefile.old clean + $(MAKE) -f Makefile.old run DEBUG=1 -j 16 CC=gcc CXX=g++ + # Release build with gcc $(MAKE) -f Makefile.old clean $(MAKE) -f Makefile.old run DEBUG=0 -j 16 CC=gcc CXX=g++ ./check_analyze.sh - ./output_tests/test_output.sh @ echo PRESUBMIT PASSED RTL_LINT_FITLER=-legal/copyright,-build/include,-readability/casting,-build/header_guard diff --git a/compiler-rt/lib/tsan/rtl/Makefile.old b/compiler-rt/lib/tsan/rtl/Makefile.old index 220e6fbc70f..b826a75f291 100644 --- a/compiler-rt/lib/tsan/rtl/Makefile.old +++ b/compiler-rt/lib/tsan/rtl/Makefile.old @@ -10,15 +10,18 @@ NO_SYSROOT=--sysroot=. CXXFLAGS+=$(EXTRA_CXXFLAGS) ifeq ($(DEBUG), 0) CXXFLAGS+=-fomit-frame-pointer -endif +ifeq ($(CXX), g++) + CXXFLAGS+=-Wframe-larger-than=512 +endif # CXX=g++ +endif # DEBUG=0 + ifeq ($(CXX), clang++) # Global constructors are banned. CXXFLAGS+=-Wglobal-constructors -else - CXXFLAGS+=-Wframe-larger-than=512 endif + all: libtsan.a LIBTSAN_HEADERS=tsan_allocator.h \ diff --git a/compiler-rt/lib/tsan/rtl/tsan_clock.h b/compiler-rt/lib/tsan/rtl/tsan_clock.h index c4f8194479f..97e20a84992 100644 --- a/compiler-rt/lib/tsan/rtl/tsan_clock.h +++ b/compiler-rt/lib/tsan/rtl/tsan_clock.h @@ -41,23 +41,23 @@ struct ThreadClock { public: ThreadClock(); - u64 get(int tid) const { + u64 get(unsigned tid) const { DCHECK(tid < kMaxTid); return clk_[tid]; } - void set(int tid, u64 v) { + void set(unsigned tid, u64 v) { DCHECK(tid < kMaxTid); DCHECK(v >= clk_[tid]); clk_[tid] = v; - if ((int)nclk_ <= tid) + if (nclk_ <= tid) nclk_ = tid + 1; } - void tick(int tid) { + void tick(unsigned tid) { DCHECK(tid < kMaxTid); clk_[tid]++; - if ((int)nclk_ <= tid) + if (nclk_ <= tid) nclk_ = tid + 1; } diff --git a/compiler-rt/lib/tsan/rtl/tsan_defs.h b/compiler-rt/lib/tsan/rtl/tsan_defs.h index d2088d5f32e..77c26b4f5f1 100644 --- a/compiler-rt/lib/tsan/rtl/tsan_defs.h +++ b/compiler-rt/lib/tsan/rtl/tsan_defs.h @@ -30,7 +30,7 @@ typedef unsigned long uptr; // NOLINT const uptr kPageSize = 4096; const int kTidBits = 16; -const int kMaxTid = 1 << kTidBits; +const unsigned kMaxTid = 1 << kTidBits; const int kClkBits = 40; #ifdef TSAN_SHADOW_COUNT diff --git a/compiler-rt/lib/tsan/rtl/tsan_rtl.h b/compiler-rt/lib/tsan/rtl/tsan_rtl.h index 11179045cdc..a5bdd524cb6 100644 --- a/compiler-rt/lib/tsan/rtl/tsan_rtl.h +++ b/compiler-rt/lib/tsan/rtl/tsan_rtl.h @@ -307,8 +307,8 @@ struct Context { int nmissed_expected; Mutex thread_mtx; - int thread_seq; - int unique_thread_seq; + unsigned thread_seq; + unsigned unique_thread_seq; int alive_threads; int max_alive_threads; ThreadContext *threads[kMaxTid]; diff --git a/compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cc b/compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cc index b8748264206..b444077fd24 100644 --- a/compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cc +++ b/compiler-rt/lib/tsan/rtl/tsan_rtl_thread.cc @@ -40,7 +40,7 @@ void ThreadFinalize(ThreadState *thr) { return; Context *ctx = CTX(); Lock l(&ctx->thread_mtx); - for (int i = 0; i < kMaxTid; i++) { + for (unsigned i = 0; i < kMaxTid; i++) { ThreadContext *tctx = ctx->threads[i]; if (tctx == 0) continue; @@ -230,7 +230,7 @@ int ThreadTid(ThreadState *thr, uptr pc, uptr uid) { CHECK_GT(thr->in_rtl, 0); DPrintf("#%d: ThreadTid uid=%lu\n", thr->tid, uid); Lock l(&CTX()->thread_mtx); - for (int tid = 0; tid < kMaxTid; tid++) { + for (unsigned tid = 0; tid < kMaxTid; tid++) { if (CTX()->threads[tid] != 0 && CTX()->threads[tid]->user_id == uid && CTX()->threads[tid]->status != ThreadStatusInvalid) |