1. 17 Apr, 2020 1 commit
  2. 14 Apr, 2020 1 commit
  3. 10 Apr, 2020 1 commit
    • Fix cycleclock::Now for RISC-V and PPC (#955) · a77d5f70
      Luís Marques authored
      Fixes the following issues with the implementation of `cycleclock::Now`:
      
      - The RISC-V implementation wouldn't compile due to a typo;
      
      - Both the PPC and RISC-V implementation's asm statements lacked the
        volatile keyword. This resulted in the repeated read of the counter's
        high part being optimized away, so overflow wasn't handled at all.
        Multiple counter reads could also be misoptimized, especially in LTO
        scenarios.
      
      - Relied on the zero/sign-extension of inline asm operands, which isn't
        guaranteed to occur and differs between compilers, namely GCC and Clang.
      
      The PowerPC64 implementation was improved to do a single 64-bit read of
      the time-base counter.
      
      The RISC-V implementation was improved to do the overflow handing in
      assembly, since Clang would generate a branch, defeating the purpose
      of the non-branching counter reading approach.
  4. 06 Apr, 2020 1 commit
    • Fix type conversion warnings. (#951) · 0ab2c290
      Dominic Hamon authored
      * Fix type conversion warnings.
      
      Fixes #949
      
      Tested locally (Linux/clang), but warnings are on MSVC so may differ.
      
      * Drop the ULP so the double test passes
  5. 30 Mar, 2020 1 commit
  6. 16 Mar, 2020 2 commits
  7. 25 Feb, 2020 1 commit
  8. 21 Feb, 2020 1 commit
    • Relax CHECK condition in benchmark_runner.cc (#938) · c0783374
      Paweł Bylica authored
      * Add State::error_occurred()
      
      * Relax CHECK condition in benchmark_runner.cc
      
      If the benchmark state contains an error, do not expect any iterations has been run.
      This allows using SkipWithError() and return early from the benchmark function.
      
      * README.md: document new possible usage of SkipWithError()
  9. 18 Feb, 2020 1 commit
  10. 07 Feb, 2020 1 commit
    • Fix MSVC warning. (#935) · 8982e1ee
      Ben Clayton authored
      This fixes the Visual Studio 2019 warning:
      
      `C4244: '=': conversion from 'int' to 'char', possible loss of data`
      
      When implicitly casting the return value of tolower() (int) to char.
      
      Fixes: #932
  11. 31 Jan, 2020 1 commit
  12. 30 Jan, 2020 1 commit
  13. 14 Jan, 2020 1 commit
    • Alias CMake Targets. Fixes #921 (#926) · daff5fea
      Jordan Williams authored
      * add Jordan Williams to both CONTRIBUTORS and AUTHORS
      
      * alias benchmark libraries
      
      Provide aliased CMake targets for the benchmark and benchmark_main targets.
      The alias targets are namespaced under benchmark::, which is the namespace when they are exported.
      I chose not to use either the PROJECT_NAME or the namespace variable but to hard-code the namespace.
      This is because the benchmark and benchmark_main targets are hard-coded by name themselves.
      Hard-coding the namespace is also much cleaner and easier to read.
      
      * link to aliased benchmark targets
      
      It is safer to link against namespaced targets because of how CMake interprets the double colon.
      Typo's will be caught by CMake at configuration-time instead of during compile / link time.
      
      * document the provided alias targets
      
      * add "Usage with CMake" section in documentation
      
      This section covers linking against the alias/import CMake targets and including them using either find_package or add_subdirectory.
      
      * format the "Usage with CMake" README section
      
      Added a newline after the "Usage with CMake" section header.
      Dropped the header level of the section by one to make it a direct subsection of the "Usage" section.
      Wrapped lines to be no longer than 80 characters in length.
  14. 05 Jan, 2020 1 commit
    • Add d postfix to Debug libraries (#923) · 5ce2429a
      Szitár Gergő authored
      * Add DEBUG_POSTFIX to libraries.
      
      Makes it possible to install Debug and Release versions on the
      same system. Without this, there were only linker errors when using
      the wrong configuration.
      
      * Update CONTRIBUTORS and AUTHORS according to guide
  15. 15 Dec, 2019 1 commit
  16. 02 Dec, 2019 1 commit
  17. 01 Dec, 2019 2 commits
  18. 25 Nov, 2019 1 commit
  19. 22 Nov, 2019 6 commits
  20. 05 Nov, 2019 1 commit
    • CMake: use full add_test(NAME <> COMMAND <>) signature (#901) · c50ac68c
      Gregor Jasny authored
      * CTest must use proper paths to executables
      
      With the following syntax:
      
      ```
        add_test(NAME <name> COMMAND <command> [<arg>...])
      ```
      
      if `<command>` specifies an executable target it will automatically
      be replaced by the location of the executable created at build time.
      
      This is important if a `<Configuration>_POSTFIX` like `_d` is used.
      
      * Fix typo in ctest invocation
      
      Instead of `-c` the uppercase `-C` must be used to select a config.
      But better use the longopt.
  21. 24 Oct, 2019 1 commit
  22. 23 Oct, 2019 2 commits
  23. 08 Oct, 2019 1 commit
  24. 04 Oct, 2019 1 commit
  25. 27 Sep, 2019 1 commit
  26. 23 Sep, 2019 2 commits
    • Guard definition of __STDC_FORMAT_MACROS in ifndef (#875) · b874e722
      Geoffrey Martin-Noble authored
      This macro is sometimes already defined and redefining it results
      in build errors.
    • Define HOST_NAME_MAX for NaCl and RTEMS (#876) · 7411874d
      Geoffrey Martin-Noble authored
      These OS's don't always have HOST_NAME_MAX defined, resulting in
      build errors.
      
      A few related changes as well:
      * Only define HOST_NAME_MAX if it's not already defined. There are
        some cases where this is already defined, e.g. with NaCl if
        __USE_POSIX is set. To avoid all of these, only define it if it's
        not already defined.
      * Default HOST_NAME_MAX to 64 and issue a #warning. Having the wrong
        max length is pretty harmless. The name just ends up getting
        truncated and this is only for printing debug info. Because we're
        constructing a std::string from a char[] (so defined length), we
        don't need to worry about gethostname's undefined behavior for
        whether the truncation is null-terminated when the hostname
        doesn't fit in HOST_NAME_MAX. Of course, this doesn't help people
        who have -Werror set, since they'll still get a warning.
  27. 21 Sep, 2019 1 commit
  28. 20 Sep, 2019 1 commit
  29. 16 Sep, 2019 1 commit
    • Addresses issue #634. (#866) · bf4f2ea0
      sharpe5 authored
      * Update with instructions to build under Visual Studio
      
      Fixes Issue #634.
      
      I spent 3 days trying to build this library under Visual Studio 2017, only to discover on has to link to `Shlwapi.lib`.
      
      Became so frustrated with the docs that I added full build instructions for Visual Studio 2015, 2017 and Intel Comiler 2015 and 2019.
      
      * Update headings
  30. 15 Sep, 2019 1 commit
  31. 21 Aug, 2019 1 commit