diff options
author | Andy Polyakov <appro@openssl.org> | 2017-03-25 10:58:57 +0100 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2017-03-26 18:29:03 +0200 |
commit | 0822d41b6d54132df96c02cc6f6fa9b179378351 (patch) | |
tree | 547cf6f8c617e329d326964428cc960c7cf3ff4a | |
parent | e08b444ac097825b10d3b90dbdb0d7197567cc4d (diff) |
aes/asm/bsaes-armv7.pl: relax stack alignment requirement.
Even though Apple refers to Procedure Call Standard for ARM Architecture
(AAPCS), they apparently adhere to custom version that doesn't follow
stack alignment constraints in the said standard. [Why or why? If it's
vendor lock-in thing, then it would be like worst spot ever.] And since
bsaes-armv7 relied on standard alignment, it became problematic to
execute the code on iOS.
Reviewed-by: Rich Salz <rsalz@openssl.org>
-rw-r--r-- | crypto/aes/asm/bsaes-armv7.pl | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/aes/asm/bsaes-armv7.pl b/crypto/aes/asm/bsaes-armv7.pl index 33295881e1..ba641eb547 100644 --- a/crypto/aes/asm/bsaes-armv7.pl +++ b/crypto/aes/asm/bsaes-armv7.pl @@ -1365,7 +1365,7 @@ bsaes_cbc_encrypt: vmov @XMM[4],@XMM[15] @ just in case ensure that IV vmov @XMM[5],@XMM[0] @ and input are preserved bl AES_decrypt - vld1.8 {@XMM[0]}, [$fp,:64] @ load result + vld1.8 {@XMM[0]}, [$fp] @ load result veor @XMM[0], @XMM[0], @XMM[4] @ ^= IV vmov @XMM[15], @XMM[5] @ @XMM[5] holds input vst1.8 {@XMM[0]}, [$rounds] @ write output |