diff --git a/sparc/aes.asm b/sparc/aes.asm
index dc79d8b6188d7a74123c60cab6388e1df976f9c9..57bdbee1d5c3b909802c1e1b4fa16dd578cd339a 100644
--- a/sparc/aes.asm
+++ b/sparc/aes.asm
@@ -191,16 +191,16 @@ _aes_crypt:
 	ldub	[T+t0], t0	! 0
 	sll	t1, 8, t1	! 1
 	ldub	[wtxt+t3], t3	! 3
-	or	t0, t1, %g3	! 0, 1
+	or	t0, t1, t0	! 0, 1
 	ldub	[T+%o4], %g2	! 2
 	cmp	i, 3
 	ldub	[T+t3], t3	! 3
 	sll	%g2, 16, %g2	! 2
-	or	%g3, %g2, %g3	! 0, 1, 2
+	or	t0, %g2, t0	! 0, 1, 2
 	ld	[ctx + round], %g2
 	sll	t3, 24, t3	! 3
-	or	%g3, t3, %g3	! 0, 1, 2, 3
-	xor	%g3, %g2, %g3
+	or	t0, t3, t0	! 0, 1, 2, 3
+	xor	t0, %g2, %g3
 	srl	%g3, 24, %o5
 	srl	%g3, 16, %o0
 	srl	%g3, 8, %g2