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)11 pub 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)23 pub 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)35 pub 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)47 pub 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