1 #![no_std] 2 #![cfg(any(target_arch = "x86_64", target_arch = "x86"))] 3 #![feature(test)] 4 extern crate aesni; 5 extern crate test; 6 7 use aesni::Aes256; 8 use aesni::block_cipher_trait::BlockCipher; 9 10 #[bench] aes256_encrypt(bh: &mut test::Bencher)11pub fn aes256_encrypt(bh: &mut test::Bencher) { 12 let cipher = Aes256::new(&Default::default()); 13 let mut input = Default::default(); 14 15 bh.iter(|| { 16 cipher.encrypt_block(&mut input); 17 test::black_box(&input); 18 }); 19 bh.bytes = input.len() as u64; 20 } 21 22 #[bench] aes256_decrypt(bh: &mut test::Bencher)23pub fn aes256_decrypt(bh: &mut test::Bencher) { 24 let cipher = Aes256::new(&Default::default()); 25 let mut input = Default::default(); 26 27 bh.iter(|| { 28 cipher.decrypt_block(&mut input); 29 test::black_box(&input); 30 }); 31 bh.bytes = input.len() as u64; 32 } 33 34 #[bench] aes256_encrypt8(bh: &mut test::Bencher)35pub fn aes256_encrypt8(bh: &mut test::Bencher) { 36 let cipher = Aes256::new(&Default::default()); 37 let mut input = Default::default(); 38 39 bh.iter(|| { 40 cipher.encrypt_blocks(&mut input); 41 test::black_box(&input); 42 }); 43 bh.bytes = (input[0].len() * input.len()) as u64; 44 } 45 46 #[bench] aes256_decrypt8(bh: &mut test::Bencher)47pub fn aes256_decrypt8(bh: &mut test::Bencher) { 48 let cipher = Aes256::new(&Default::default()); 49 let mut input = Default::default(); 50 51 bh.iter(|| { 52 cipher.decrypt_blocks(&mut input); 53 test::black_box(&input); 54 }); 55 bh.bytes = (input[0].len() * input.len()) as u64; 56 } 57