blob: 2f2fe3c581ec63129467813cb5fc6a9a6c71d1c5 [file] [log] [blame]
// Copyright 2024 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// GENERATED FILE: Regen with "fx build host-tools/regen_fidl_benchmark_suite && fx regen_fidl_benchmark_suite && fx format-code"
// Binary tree with depth 8 (255 elements)
benchmark("StructTree/Depth8") {
bindings_allowlist = [llcpp, hlcpp, cpp, rust, go, reference, dart],
value = StructTree8{
left: StructTree7{
left: StructTree6{
left: StructTree5{
left: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
right: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
},
right: StructTree5{
left: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
right: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
},
},
right: StructTree6{
left: StructTree5{
left: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
right: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
},
right: StructTree5{
left: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
right: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
},
},
},
right: StructTree7{
left: StructTree6{
left: StructTree5{
left: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
right: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
},
right: StructTree5{
left: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
right: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
},
},
right: StructTree6{
left: StructTree5{
left: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
right: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
},
right: StructTree5{
left: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
right: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
},
},
},
},
}
// Binary tree with depth 6 (63 elements)
benchmark("StructTree/Depth6") {
bindings_allowlist = [llcpp, hlcpp, cpp, rust, go, reference, dart],
value = StructTree6{
left: StructTree5{
left: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
right: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
},
right: StructTree5{
left: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
right: StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
},
},
}
// Binary tree with depth 4 (15 elements)
benchmark("StructTree/Depth4") {
bindings_allowlist = [llcpp, hlcpp, cpp, rust, go, reference, dart],
value = StructTree4{
left: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
right: StructTree3{
left: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
right: StructTree2{
left: StructTree1{
a: 1,
b: 2,
},
right: StructTree1{
a: 1,
b: 2,
},
},
},
},
}