1 #[path = "support/macros.rs"] 2 #[macro_use] 3 mod macros; 4 mod support; 5 6 use criterion::{criterion_group, criterion_main, Criterion}; 7 use glam::Vec2; 8 use std::ops::Mul; 9 use support::*; 10 11 euler!( 12 vec2_euler, 13 "vec2 euler", 14 ty => Vec2, 15 storage => Vec2, 16 zero => Vec2::ZERO, 17 rand => random_vec2); 18 19 bench_binop!( 20 vec2_mul_vec2, 21 "vec2 mul vec2", 22 op => mul, 23 from1 => random_vec2, 24 from2 => random_vec2 25 ); 26 27 bench_binop!( 28 vec2_angle_between, 29 "vec2 angle_between", 30 op => angle_between, 31 from1 => random_vec2, 32 from2 => random_vec2 33 ); 34 35 bench_select!( 36 vec2_select, 37 "vec2 select", 38 ty => Vec2, 39 op => cmple, 40 from => random_vec2 41 ); 42 43 criterion_group!( 44 benches, 45 vec2_mul_vec2, 46 vec2_euler, 47 vec2_select, 48 vec2_angle_between 49 ); 50 51 criterion_main!(benches); 52