summaryrefslogtreecommitdiff
path: root/plugins/warp/benches/guid.rs
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/warp/benches/guid.rs')
-rw-r--r--plugins/warp/benches/guid.rs22
1 files changed, 22 insertions, 0 deletions
diff --git a/plugins/warp/benches/guid.rs b/plugins/warp/benches/guid.rs
new file mode 100644
index 00000000..577f80b5
--- /dev/null
+++ b/plugins/warp/benches/guid.rs
@@ -0,0 +1,22 @@
+use binaryninja::binaryview::BinaryViewExt;
+use binaryninja::headless::Session;
+use criterion::{criterion_group, criterion_main, Criterion};
+use warp_ninja::function_guid;
+
+pub fn guid_benchmark(c: &mut Criterion) {
+ let session = Session::new();
+ let bv = session.load(env!("TEST_BIN_LIBRARY_OBJ")).unwrap();
+ let functions = bv.functions();
+ assert_eq!(functions.len(), 6);
+ let mut function_iter = functions.into_iter();
+ let first_function = function_iter.next().unwrap();
+
+ c.bench_function("function guid", |b| {
+ b.iter(|| {
+ function_guid(&first_function, &vec![]);
+ })
+ });
+}
+
+criterion_group!(benches, guid_benchmark);
+criterion_main!(benches);