- 03 Sep, 2016 9 commits
-
-
Eric Fiselier authored
-
Eric Fiselier authored
-
Eric Fiselier authored
-
Eric Fiselier authored
-
Eric Fiselier authored
-
Eric Fiselier authored
-
Eric Fiselier authored
-
Eric Fiselier authored
-
Eric authored
* Change to using per-thread timers * fix bad assertions * fix copy paste error on windows * Fix thread safety annotations * Make null-log thread safe * remove remaining globals * use chrono for walltime since it is thread safe * consolidate timer functions * Add missing ctime include * Rename to be consistent with Google style * Format patch using clang-format * cleanup -Wthread-safety configuration * Don't trust _POSIX_FEATURE macros because OS X lies. * Fix OS X thread timings * attempt to fix mingw build * Attempt to make mingw work again * Revert old mingw workaround * improve diagnostics * Drastically improve OS X measurements * Use average real time instead of max
-
- 02 Sep, 2016 1 commit
-
-
Dominic Hamon authored
-
- 01 Sep, 2016 1 commit
-
-
biojppm authored
* Fixture: add non const Setup() and TearDown(). This allows write-access to the State variable, which is important in upcoming user-defined counter functionality. * Fix const placement in the Fixture methods. * Fixture: use const_cast instead of static_cast.
-
- 31 Aug, 2016 1 commit
-
-
biojppm authored
cmake does not require this, but IDEs such as VisualStudio or QtCreator need this to add the headers to the generated project.
-
- 30 Aug, 2016 1 commit
-
-
Eric Fiselier authored
-
- 29 Aug, 2016 6 commits
-
-
Eric authored
* Add warning for large benchmark families * reflow comment
-
Eric authored
* Add BENCHMARK_USE_LIBCXX option. * Add comments * re-add zero null pointer warning
-
Eric authored
* changes * remove other changes * remove unneeded test * cleanup unused include
-
Eric Fiselier authored
-
Eric Fiselier authored
In the `Ranges(...)` generation code a "control" vector which stores the current index for each range passed to `Ranges`. Previously this vector was incorrectly initialized to the size of the subranges not the number of subranges. Additionally this patch suppresses unused warnings generated by `stream_init_anchor`.
-
Eric Fiselier authored
The benchmark library internals write to std::cout/std::cerr during program startup. This can cause segfaults when the user doesn't include <iostream> in the benchmark (which init's the streams). This patch fixes this by emitting a dynamic initializer in every TU which initializes the streams.
-
- 28 Aug, 2016 3 commits
-
-
Eric Fiselier authored
-
Eric Fiselier authored
-
Eric authored
* refactor * Move default substitutions into library * Move default substitutions to the *right* place in the library * Fix init order issues that caused test failures * improve diagnostics * add missing include * general cleanup * Address review comments
-
- 11 Aug, 2016 2 commits
-
-
Eric Fiselier authored
The plain MinGW enviroment does not provide any threading supporting, including in the C++ STL. The MinGW-w64 enviroment does not have this problem. This patch removes the 32 bit bot since it's always going to fail.
-
Eric authored
-
- 09 Aug, 2016 5 commits
-
-
Eric Fiselier authored
-
Eric authored
This patch adds the compare_bench.py utility which can be used to compare the result of benchmarks. The program is invoked like: $ compare_bench.py <old-benchmark> <new-benchmark> [benchmark options]... Where <old-benchmark> and <new-benchmark> either specify a benchmark executable file, or a JSON output file. The type of the input file is automatically detected. If a benchmark executable is specified then the benchmark is run to obtain the results. Otherwise the results are simply loaded from the output file.
-
Eric authored
-
Eric Fiselier authored
Currently out Appveyor CI downloads and stashes a custom MinGW installation. However the builder already provides both 64 and 32 bit installations of MinGW. This patch changes our CI to use those instead. I'm hoping this will fix issues where the g++ is broken due to the Appveyor package caching semantics.
-
- 08 Aug, 2016 7 commits
-
-
Eric Fiselier authored
-
Eric Fiselier authored
Currently the Appveyor bot is a PIT. It never passes and it often hangs or gives very poor output. This patch rewrites the configuration. This patch also attempts to fix a flaky complexity test as a drive-by.
-
Eric Fiselier authored
-
Eric Fiselier authored
-
Eric Fiselier authored
This patch adds three new build configurations to the travis CI. * Clang 3.8 w/ libc++ * Clang 3.8 w/ libc++, UBSAN, ASAN * Clang 3.8 w/ libc++, MSAN
-
Eric Fiselier authored
-
Eric Fiselier authored
This patch adds new builders that test against GCC 6 and Clang 3.8 respectivly. They also enable both address and undefined sanitizer. MSAN currently won't work since it requires a sanitized STL.
-
- 07 Aug, 2016 4 commits
-
-
Eric Fiselier authored
Previously the FittingCurve functions for n^2 and n^3 did the calculation using int types. This can overflow and cause UB. This patch changes the calculations to use std::pow to prevent this. Also re-enable VC 2013 appveyor bot since I *hope* this is what was causing the failures.
-
Eric Fiselier authored
-
Eric Fiselier authored
-
Eric Fiselier authored
This is secretly just a test commit to get appveyor to run again.
-