summaryrefslogtreecommitdiff
path: root/cipher/serpent.c
diff options
context:
space:
mode:
authorJussi Kivilinna <jussi.kivilinna@iki.fi>2013-08-22 15:26:52 +0300
committerJussi Kivilinna <jussi.kivilinna@iki.fi>2013-08-22 15:26:52 +0300
commit040aa7688296e93659cb32ca31e9a001a6ab1edd (patch)
treea4b662bb71cdd0ac18d19bb9792532b4ed2030fb /cipher/serpent.c
parent82db04a6a0058cf870485459abe7c1659b138ec5 (diff)
downloadlibgcrypt-040aa7688296e93659cb32ca31e9a001a6ab1edd.tar.gz
serpent-sse2-amd64: Move register clearing to assembly functions
cipher/serpent-sse2-amd64.S (_gcry_serpent_sse2_ctr_enc) (_gcry_serpent_sse2_cbc_dec, _gcry_serpent_sse2_cfb_dec): Clear used XMM registers. cipher/serpent.c (_gcry_serpent_ctr_enc, _gcry_serpent_cbc_dec) ( _gcry_serpent_cfb_dec) [USE_SSE2]: Remove XMM register clearing from bulk functions. -- Signed-off-by: Jussi Kivilinna <jussi.kivilinna@iki.fi>
Diffstat (limited to 'cipher/serpent.c')
-rw-r--r--cipher/serpent.c48
1 files changed, 0 insertions, 48 deletions
diff --git a/cipher/serpent.c b/cipher/serpent.c
index 8aded344..bf03fe74 100644
--- a/cipher/serpent.c
+++ b/cipher/serpent.c
@@ -875,22 +875,6 @@ _gcry_serpent_ctr_enc(void *context, unsigned char *ctr,
if (did_use_sse2)
{
- /* clear SSE2 registers used by serpent-sse2 */
- asm volatile (
- "pxor %%xmm0, %%xmm0;\n"
- "pxor %%xmm1, %%xmm1;\n"
- "pxor %%xmm2, %%xmm2;\n"
- "pxor %%xmm3, %%xmm3;\n"
- "pxor %%xmm4, %%xmm4;\n"
- "pxor %%xmm5, %%xmm5;\n"
- "pxor %%xmm6, %%xmm6;\n"
- "pxor %%xmm7, %%xmm7;\n"
- "pxor %%xmm10, %%xmm10;\n"
- "pxor %%xmm11, %%xmm11;\n"
- "pxor %%xmm12, %%xmm12;\n"
- "pxor %%xmm13, %%xmm13;\n"
- :::);
-
/* serpent-sse2 assembly code does not use stack */
if (nblocks == 0)
burn_stack_depth = 0;
@@ -982,22 +966,6 @@ _gcry_serpent_cbc_dec(void *context, unsigned char *iv,
if (did_use_sse2)
{
- /* clear SSE2 registers used by serpent-sse2 */
- asm volatile (
- "pxor %%xmm0, %%xmm0;\n"
- "pxor %%xmm1, %%xmm1;\n"
- "pxor %%xmm2, %%xmm2;\n"
- "pxor %%xmm3, %%xmm3;\n"
- "pxor %%xmm4, %%xmm4;\n"
- "pxor %%xmm5, %%xmm5;\n"
- "pxor %%xmm6, %%xmm6;\n"
- "pxor %%xmm7, %%xmm7;\n"
- "pxor %%xmm10, %%xmm10;\n"
- "pxor %%xmm11, %%xmm11;\n"
- "pxor %%xmm12, %%xmm12;\n"
- "pxor %%xmm13, %%xmm13;\n"
- :::);
-
/* serpent-sse2 assembly code does not use stack */
if (nblocks == 0)
burn_stack_depth = 0;
@@ -1084,22 +1052,6 @@ _gcry_serpent_cfb_dec(void *context, unsigned char *iv,
if (did_use_sse2)
{
- /* clear SSE2 registers used by serpent-sse2 */
- asm volatile (
- "pxor %%xmm0, %%xmm0;\n"
- "pxor %%xmm1, %%xmm1;\n"
- "pxor %%xmm2, %%xmm2;\n"
- "pxor %%xmm3, %%xmm3;\n"
- "pxor %%xmm4, %%xmm4;\n"
- "pxor %%xmm5, %%xmm5;\n"
- "pxor %%xmm6, %%xmm6;\n"
- "pxor %%xmm7, %%xmm7;\n"
- "pxor %%xmm10, %%xmm10;\n"
- "pxor %%xmm11, %%xmm11;\n"
- "pxor %%xmm12, %%xmm12;\n"
- "pxor %%xmm13, %%xmm13;\n"
- :::);
-
/* serpent-sse2 assembly code does not use stack */
if (nblocks == 0)
burn_stack_depth = 0;