Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 82062c72 authored by Herbert Xu's avatar Herbert Xu
Browse files

[CRYPTO] padlock: Rearrange context structure to reduce code size



i386 assembly has more compact instructions for accessing 7-bit offsets.
So by moving the large members to the end of the structure we can save
quite a bit of code size.  This patch shaves about 10% or 300 bytes off
the padlock-aes file.

Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 6c2bb98b
Loading
Loading
Loading
Loading
+4 −6
Original line number Diff line number Diff line
@@ -60,15 +60,14 @@
#define AES_EXTENDED_KEY_SIZE_B	(AES_EXTENDED_KEY_SIZE * sizeof(uint32_t))

struct aes_ctx {
	uint32_t e_data[AES_EXTENDED_KEY_SIZE];
	uint32_t d_data[AES_EXTENDED_KEY_SIZE];
	struct {
		struct cword encrypt;
		struct cword decrypt;
	} cword;
	uint32_t *E;
	uint32_t *D;
	u32 *D;
	int key_length;
	u32 E[AES_EXTENDED_KEY_SIZE];
	u32 d_data[AES_EXTENDED_KEY_SIZE];
};

/* ====== Key management routines ====== */
@@ -313,8 +312,7 @@ static int aes_set_key(struct crypto_tfm *tfm, const u8 *in_key,
	 * itself we must supply the plain key for both encryption
	 * and decryption.
	 */
	ctx->E = ctx->e_data;
	ctx->D = ctx->e_data;
	ctx->D = ctx->E;

	E_KEY[0] = le32_to_cpu(key[0]);
	E_KEY[1] = le32_to_cpu(key[1]);