diff options
author | Elliott Hughes <enh@google.com> | 2014-06-10 20:47:49 -0700 |
---|---|---|
committer | Elliott Hughes <enh@google.com> | 2014-06-11 16:32:10 -0700 |
commit | b27a840f4b520bfa095db99b0a2e5205634b0003 (patch) | |
tree | c27682ed0b5e301cbe0aa49dfd6ada3e1bef9eae /benchmarks | |
parent | 0ada9388e74693d990bdbb4af92c33bae8b34d4b (diff) | |
download | bionic-b27a840f4b520bfa095db99b0a2e5205634b0003.zip bionic-b27a840f4b520bfa095db99b0a2e5205634b0003.tar.gz bionic-b27a840f4b520bfa095db99b0a2e5205634b0003.tar.bz2 |
Add __pure2 to a few more functions, most notably gettid and pthread_self.
Change-Id: I7eee9f26f45130038af09d8285782b07f70a996f
Diffstat (limited to 'benchmarks')
-rw-r--r-- | benchmarks/pthread_benchmark.cpp | 5 | ||||
-rw-r--r-- | benchmarks/unistd_benchmark.cpp | 5 |
2 files changed, 8 insertions, 2 deletions
diff --git a/benchmarks/pthread_benchmark.cpp b/benchmarks/pthread_benchmark.cpp index 621fcb6..c010dd2 100644 --- a/benchmarks/pthread_benchmark.cpp +++ b/benchmarks/pthread_benchmark.cpp @@ -18,11 +18,14 @@ #include <pthread.h> +// Stop GCC optimizing out our pure function. +/* Must not be static! */ pthread_t (*pthread_self_fp)() = pthread_self; + static void BM_pthread_self(int iters) { StartBenchmarkTiming(); for (int i = 0; i < iters; ++i) { - pthread_self(); + pthread_self_fp(); } StopBenchmarkTiming(); diff --git a/benchmarks/unistd_benchmark.cpp b/benchmarks/unistd_benchmark.cpp index f2c9d73..c35e7c3 100644 --- a/benchmarks/unistd_benchmark.cpp +++ b/benchmarks/unistd_benchmark.cpp @@ -30,11 +30,14 @@ static void BM_unistd_getpid(int iters) { } BENCHMARK(BM_unistd_getpid); +// Stop GCC optimizing out our pure function. +/* Must not be static! */ pid_t (*gettid_fp)() = gettid; + static void BM_unistd_gettid(int iters) { StartBenchmarkTiming(); for (int i = 0; i < iters; ++i) { - gettid(); + gettid_fp(); } StopBenchmarkTiming(); |