summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--x86/aes-decrypt-internal.asm6
-rw-r--r--x86/aes-encrypt-internal.asm5
2 files changed, 5 insertions, 6 deletions
diff --git a/x86/aes-decrypt-internal.asm b/x86/aes-decrypt-internal.asm
index ff94fa8f..dffad282 100644
--- a/x86/aes-decrypt-internal.asm
+++ b/x86/aes-decrypt-internal.asm
@@ -72,6 +72,8 @@ PROLOGUE(_nettle_aes_decrypt)
testl %ebp,%ebp
jz .Lend
+ shrl $4, FRAME_LENGTH
+
.Lblock_loop:
movl FRAME_CTX,KEY C address of context struct ctx
C get number of rounds to do from ctx struct
@@ -150,10 +152,8 @@ PROLOGUE(_nettle_aes_decrypt)
AES_STORE(SA,SB,SC,SD, KEY, TMP)
addl $16, FRAME_DST C Increment destination pointer
- subl $16, FRAME_LENGTH C Length
+ decl FRAME_LENGTH
- C NOTE: Will loop forever if input data is not an
- C integer number of blocks.
jnz .Lblock_loop
.Lend:
diff --git a/x86/aes-encrypt-internal.asm b/x86/aes-encrypt-internal.asm
index dc573948..a6517851 100644
--- a/x86/aes-encrypt-internal.asm
+++ b/x86/aes-encrypt-internal.asm
@@ -72,6 +72,7 @@ PROLOGUE(_nettle_aes_encrypt)
testl %ebp,%ebp
jz .Lend
+ shrl $4, FRAME_LENGTH
.Lblock_loop:
movl FRAME_CTX,KEY C address of context struct ctx
C get number of rounds to do from ctx struct
@@ -150,10 +151,8 @@ PROLOGUE(_nettle_aes_encrypt)
AES_STORE(SA,SB,SC,SD, KEY, TMP)
addl $16, FRAME_DST C Increment destination pointer
- subl $16, FRAME_LENGTH C Length
+ decl FRAME_LENGTH C Length
- C NOTE: Will loop forever if input data is not an
- C integer number of blocks.
jnz .Lblock_loop
.Lend: