From 75d59956a4231740e0be107e240f51ce69bde0d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se> Date: Tue, 14 May 2002 23:58:21 +0200 Subject: [PATCH] (_aes_crypt): Allocate only 32 bytes local storage on the stack. Calculate wtxt and tmp using offsets from %sp, not %fp. Rev: src/nettle/sparc/aes.asm:1.71 --- sparc/aes.asm | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/sparc/aes.asm b/sparc/aes.asm index f6d05ed4..05d4a6e5 100644 --- a/sparc/aes.asm +++ b/sparc/aes.asm @@ -66,15 +66,19 @@ define(t1, %o1) define(t2, %o2) define(t3, %o3) +define(<FRAME_SIZE>, 32) +define(<FRAME_WTXT>, 0) +define(<FRAME_TMP>, 16) + _aes_crypt: ! Why -136? - save %sp, -136, %sp + save %sp, -FRAME_SIZE, %sp cmp length, 0 be .Lend - ! wtxt - add %fp, -24, wtxt - - add %fp, -40, tmp + + add %sp, FRAME_WTXT, wtxt + add %sp, FRAME_TMP, tmp + ld [ctx + AES_NROUNDS], nrounds ! Compute xor, so that we can swap efficiently. xor wtxt, tmp, diff -- GitLab