Modify argument parser for multiple arguments.
Currently, if a test is created like this:
BIONIC_BENCHMARK_WITH_ARG(BM_bench, "16");
Everything works as expected, a benchmark is created of BM_bench/16.
However, it is not possible to specify a benchmark should be called with
one argument, but iterate over different values. The example:
BIONIC_BENCHMARK_WITH_ARG(BM_bench, "16 32");
Creates a single benchmark run with two arguments:
BM_bench/16/32
This change modifies the algorithm to make it possible to create multiple
instances of the benchmark iterating over each argument as a single
argument. After this change, two benchmarks are executed:
BM_bench/16
BM_bench/32
To do the previous behavior, use:
BIONIC_BENCHMARK_WITH_ARG(BM_bench, "16/32");
This will create a single benchmark with two args. This format does
not support spaces in the args, so "16 / 32" is not valid.
Modified the test_small.xml to use the new format.
Test: All unit tests pass.
Change-Id: I6f486e1d4a90580c3dace0581ea65f439911ef5a
diff --git a/benchmarks/test_suites/test_medium.xml b/benchmarks/test_suites/test_medium.xml
index 9528af3..0d29a99 100644
--- a/benchmarks/test_suites/test_medium.xml
+++ b/benchmarks/test_suites/test_medium.xml
@@ -8,7 +8,7 @@
<fn>
<name>BM_string_memcpy</name>
<iterations>25</iterations>
- <args>512 4 4</args>
+ <args>512/4/4</args>
</fn>
<fn>
<name>BM_property_get</name>