summaryrefslogtreecommitdiff
path: root/benchmarks/string_benchmark.cpp
diff options
context:
space:
mode:
authorAnders Lewis <agloo@google.com>2017-08-09 16:52:19 -0700
committerAnders Lewis <agloo@google.com>2017-08-09 17:24:13 -0700
commita98a5fb63ee00bbd7f1663192453efcdf117cb92 (patch)
treeca3ade0c20e9bb89f76e4ae37e9d3fde00a264f1 /benchmarks/string_benchmark.cpp
parentac4f4b43a3d19f40fc1138c5f78a3d5afd535935 (diff)
Improve error handling and fix minor bugs in bionic benchmarks.
Test: Unit tests. Change-Id: I224ae4c7f195176eb8a87deddb2debcbf0f24ba3
Diffstat (limited to 'benchmarks/string_benchmark.cpp')
-rw-r--r--benchmarks/string_benchmark.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/benchmarks/string_benchmark.cpp b/benchmarks/string_benchmark.cpp
index 94e7583f6..eb04c9396 100644
--- a/benchmarks/string_benchmark.cpp
+++ b/benchmarks/string_benchmark.cpp
@@ -14,6 +14,7 @@
* limitations under the License.
*/
+#include <err.h>
#include <stdint.h>
#include <string.h>
@@ -263,7 +264,7 @@ static void BM_string_strstr(benchmark::State& state) {
while (state.KeepRunning()) {
if (strstr(haystack_aligned, needle_aligned) == nullptr) {
- abort();
+ errx(1, "ERROR: strstr failed to find valid substring.");
}
}
@@ -277,10 +278,11 @@ static void BM_string_strchr(benchmark::State& state) {
std::vector<char> haystack;
char* haystack_aligned = GetAlignedPtrFilled(&haystack, haystack_alignment, nbytes, 'x');
+ haystack_aligned[nbytes-1] = '\0';
while (state.KeepRunning()) {
if (strchr(haystack_aligned, 'y') != nullptr) {
- abort();
+ errx(1, "ERROR: strchr found a chr where it should have failed.");
}
}