aesni: Use 4-way parallel AES-NI instructions for CBC decryption
authorMartin Willi <martin@revosec.ch>
Thu, 26 Mar 2015 07:34:00 +0000 (08:34 +0100)
committerMartin Willi <martin@revosec.ch>
Wed, 15 Apr 2015 09:35:27 +0000 (11:35 +0200)
commita3cb72e850755ba7db994fcbaca0b0e7b52b3b22
tree838da5fd175beb64f5b3c976d187f32716453c1a
parent95ef361415bf9e2cda157b9a1c446ea03d0118c5
aesni: Use 4-way parallel AES-NI instructions for CBC decryption

CBC decryption can be parallelized, and we do so by queueing instructions
to the processor pipeline. While we have enough registers for 128-bit
decryption, the register count is insufficient to hold all variables with
larger key sizes. Nonetheless is 4-way parallelism faster, roughly by ~8%.
src/libstrongswan/plugins/aesni/aesni_cbc.c