about summary refs log tree commit diff
path: root/tvix
diff options
context:
space:
mode:
authorFlorian Klink <flokli@flokli.de>2023-11-02T20·28+0200
committerflokli <flokli@flokli.de>2023-11-02T20·39+0000
commit1571d7195ea13e517835a20dde16577e99d548e0 (patch)
tree354376518569c958483596adbc7dc0ad9a786151 /tvix
parent524acf0337525437d83c77f39bad6316d833e8e0 (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.rs9
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));
         })
     });
 }