From 6d7406b300c414915c6d50d33a3a40f0378fc754 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Niels=20M=C3=B6ller?= <nisse@lysator.liu.se>
Date: Fri, 15 Feb 2002 14:09:28 +0100
Subject: [PATCH] * asm.m4: Use eval to compute values.

* asm.m4: Added constants for individual rows of the aes table.

* asm.m4: Define various aes struct offsets.

Rev: src/nettle/asm.m4:1.4
---
 asm.m4 | 25 +++++++++++++++----------
 1 file changed, 15 insertions(+), 10 deletions(-)

diff --git a/asm.m4 b/asm.m4
index 1df8ae3e..de447264 100644
--- a/asm.m4
+++ b/asm.m4
@@ -1,18 +1,23 @@
 changequote(<,>)dnl
 changecom(!,<
 >)dnl
+dnl FIXME: Add some struct macros similar to the once used in Amiga assemblers
 dnl Offsets in aes_ctx and aes_table
-define(AES_KEYS, 0)dnl
-define(AES_NROUNDS, 240)dnl
+define(AES_KEYS,	0)dnl
+define(AES_NROUNDS,	240)dnl
 
-define(AES_SBOX, 0)dnl
-define(AES_IDX1, 256)dnl
-define(AES_IDX2, 272)dnl
-define(AES_IDX3, 288)dnl
-define(AES_TABLE0, 304)dnl
-define(AES_TABLE1, 1328)dnl
-define(AES_TABLE2, 2352)dnl
-define(AES_TABLE3, 3376)dnl
+define(AES_SBOX_SIZE,	256)dnl
+define(AES_IDX_SIZE,	16)dnl
+define(AES_TABLE_SIZE,	1024)dnl
+
+define(AES_SBOX,	0)dnl
+define(AES_IDX1,	AES_SBOX_SIZE)dnl
+define(AES_IDX2,	eval(AES_IDX1 + AES_IDX_SIZE))dnl
+define(AES_IDX3,	eval(AES_IDX2 + AES_IDX_SIZE))dnl
+define(AES_TABLE0,	eval(AES_IDX3 + AES_IDX_SIZE))dnl
+define(AES_TABLE1,	eval(AES_TABLE0 + AES_TABLE_SIZE))dnl
+define(AES_TABLE2,	eval(AES_TABLE1 + AES_TABLE_SIZE))dnl
+define(AES_TABLE3,	eval(AES_TABLE2 + AES_TABLE_SIZE))dnl
 
 dnl define(AES_SIDX1, 304)dnl
 dnl define(AES_SIDX2, 320)dnl
-- 
GitLab