From b71ab57082d6456d99222a43c882e63a10132b11 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se>
Date: Mon, 25 Feb 2002 12:21:26 +0100
Subject: [PATCH] (_aes_crypt): Changed stop condition in source_loop to not
 depend on i.

Rev: src/nettle/sparc/aes.asm:1.48
---
 sparc/aes.asm | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/sparc/aes.asm b/sparc/aes.asm
index 20dee610..f703cc87 100644
--- a/sparc/aes.asm
+++ b/sparc/aes.asm
@@ -67,6 +67,14 @@ _aes_crypt:
 .Lblock_loop:
 	! Read src, and add initial subkey
 	mov	-4, i
+	! Read src, and add initial subkey
+	! mov	-4, i
+	! Difference between ctx and src
+	sub	ctx, src, %g2
+	! Difference between wtxt and src
+	sub	wtxt, src, %g3
+	! For stop condition
+	add	src, 12, %g4
 .Lsource_loop:
 	add	i, 4, i
 	
@@ -80,13 +88,15 @@ _aes_crypt:
 	
 	ldub	[src], t0
 	sll	t1, 8, t1
-	ld	[ctx+i], %g3
+	! Get subkey
+	ld	[ctx+i], t2
 	or	t3, t1, t3
 	
 	or	t3, t0, t3
-	xor	t3, %g3, t3
+	xor	t3, t2, t3
 	add	src, 4, src
-	cmp	i, 8
+	! cmp	i, 8
+	cmp	src, %g4
 	bleu	.Lsource_loop
 	
 	st	t3, [wtxt+i]
-- 
GitLab