1 #![feature(test)] 2 extern crate test; 3 4 use aes::cipher::{BlockDecrypt, BlockEncrypt, NewBlockCipher}; 5 use aes::Aes128; 6 7 #[bench] aes128_new(bh: &mut test::Bencher)8pub fn aes128_new(bh: &mut test::Bencher) { 9 bh.iter(|| { 10 let cipher = Aes128::new(&Default::default()); 11 test::black_box(&cipher); 12 }); 13 } 14 15 #[bench] aes128_encrypt(bh: &mut test::Bencher)16pub fn aes128_encrypt(bh: &mut test::Bencher) { 17 let cipher = Aes128::new(&Default::default()); 18 let mut input = Default::default(); 19 20 bh.iter(|| { 21 cipher.encrypt_block(&mut input); 22 test::black_box(&input); 23 }); 24 bh.bytes = input.len() as u64; 25 } 26 27 #[bench] aes128_decrypt(bh: &mut test::Bencher)28pub fn aes128_decrypt(bh: &mut test::Bencher) { 29 let cipher = Aes128::new(&Default::default()); 30 let mut input = Default::default(); 31 32 bh.iter(|| { 33 cipher.decrypt_block(&mut input); 34 test::black_box(&input); 35 }); 36 bh.bytes = input.len() as u64; 37 } 38 39 #[bench] aes128_encrypt8(bh: &mut test::Bencher)40pub fn aes128_encrypt8(bh: &mut test::Bencher) { 41 let cipher = Aes128::new(&Default::default()); 42 let mut input = Default::default(); 43 44 bh.iter(|| { 45 cipher.encrypt_par_blocks(&mut input); 46 test::black_box(&input); 47 }); 48 bh.bytes = (input[0].len() * input.len()) as u64; 49 } 50 51 #[bench] aes128_decrypt8(bh: &mut test::Bencher)52pub fn aes128_decrypt8(bh: &mut test::Bencher) { 53 let cipher = Aes128::new(&Default::default()); 54 let mut input = Default::default(); 55 56 bh.iter(|| { 57 cipher.decrypt_par_blocks(&mut input); 58 test::black_box(&input); 59 }); 60 bh.bytes = (input[0].len() * input.len()) as u64; 61 } 62