diff --git a/ChaosBenches/Mac/HmacBenches.cpp b/ChaosBenches/Mac/HmacBenches.cpp index 74dc1ab..d5ac036 100644 --- a/ChaosBenches/Mac/HmacBenches.cpp +++ b/ChaosBenches/Mac/HmacBenches.cpp @@ -101,3 +101,22 @@ static void HmacMd5_ReuseBench(benchmark::State & state) } BENCHMARK(HmacMd5_ReuseBench); + +static void HmacMd5_PartialUpdate100Bench(benchmark::State & state) +{ + for (auto _ : state) + { + Hmac hmac(KEY_BEGIN, KEY_END); + + for (int i = 0; i < 100; ++i) + { + hmac.Update(DATA_BEGIN, DATA_END); + } + + Md5Hash result = hmac.Finish(); + + benchmark::DoNotOptimize(result); + } +} + +BENCHMARK(HmacMd5_PartialUpdate100Bench);