diff options
author | Florian Klink <flokli@flokli.de> | 2023-11-02T20·28+0200 |
---|---|---|
committer | flokli <flokli@flokli.de> | 2023-11-02T20·39+0000 |
commit | 1571d7195ea13e517835a20dde16577e99d548e0 (patch) | |
tree | 354376518569c958483596adbc7dc0ad9a786151 /tvix | |
parent | 524acf0337525437d83c77f39bad6316d833e8e0 (diff) |
fix(tvix/eval/benches): use black_box properly r/6926
The purpose of black_box is to actually prevent the compiler from being able to optimize computation of the benchmarked function away. To accomplish this, we need to actually *use* black_box to blackbox the input data away, rather than the return type. Change-Id: I5438982f57509fbf7b85034346a2739d76aef1fa Reviewed-on: https://cl.tvl.fyi/c/depot/+/9902 Autosubmit: flokli <flokli@flokli.de> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
Diffstat (limited to 'tvix')
-rw-r--r-- | tvix/eval/benches/eval.rs | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/tvix/eval/benches/eval.rs b/tvix/eval/benches/eval.rs index f85e3585f017..fecf0db1b14a 100644 --- a/tvix/eval/benches/eval.rs +++ b/tvix/eval/benches/eval.rs @@ -8,8 +8,7 @@ fn interpret(code: &str) { fn eval_literals(c: &mut Criterion) { c.bench_function("int", |b| { b.iter(|| { - interpret("42"); - black_box(()) + interpret(black_box("42")); }) }); } @@ -17,8 +16,7 @@ fn eval_literals(c: &mut Criterion) { fn eval_merge_attrs(c: &mut Criterion) { c.bench_function("merge small attrs", |b| { b.iter(|| { - interpret("{ a = 1; b = 2; } // { c = 3; }"); - black_box(()) + interpret(black_box("{ a = 1; b = 2; } // { c = 3; }")); }) }); @@ -29,8 +27,7 @@ fn eval_merge_attrs(c: &mut Criterion) { ); let expr = format!("{large_attrs} // {{ c = 3; }}"); b.iter(move || { - interpret(&expr); - black_box(()) + interpret(black_box(&expr)); }) }); } |