diff options
author | Andy Polyakov <appro@openssl.org> | 2016-02-22 17:39:00 +0100 |
---|---|---|
committer | Andy Polyakov <appro@openssl.org> | 2016-02-23 21:14:25 +0100 |
commit | 14577312211e25024ffd90bbded44b021877fc59 (patch) | |
tree | 6b2b78ccad5a1b0bbcf17f7aa66cb75f8d69f84a /crypto/poly1305 | |
parent | 78c830785ca0f422502db9b201127ef1d9fe3966 (diff) |
poly1305/asm/poly1305-armv4.pl: replace ambiguous instruction.
Different assembler versions disagree on how to interpret #-1 as
argument to vmov.i64, as 0xffffffffffffffff or 0x00000000ffffffff.
So replace it with something they can't disagree on.
Reviewed-by: Rich Salz <rsalz@openssl.org>
Diffstat (limited to 'crypto/poly1305')
-rwxr-xr-x | crypto/poly1305/asm/poly1305-armv4.pl | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/crypto/poly1305/asm/poly1305-armv4.pl b/crypto/poly1305/asm/poly1305-armv4.pl index 2cce9dfee8..65b79cf124 100755 --- a/crypto/poly1305/asm/poly1305-armv4.pl +++ b/crypto/poly1305/asm/poly1305-armv4.pl @@ -1004,7 +1004,7 @@ poly1305_blocks_neon: vmlal.u32 $D2,$H4#hi,$S3 vmlal.u32 $D3,$H4#hi,$S4 - vmov.u64 $MASK,#-1 @ can be redundant + vorn $MASK,$MASK,$MASK @ all-ones, can be redundant vmlal.u32 $D0,$H1#hi,$S4 vshr.u64 $MASK,$MASK,#38 vmlal.u32 $D4,$H0#hi,$R4 @@ -1048,7 +1048,7 @@ poly1305_blocks_neon: vmlal.u32 $D2,$H4#lo,$S3 vmlal.u32 $D3,$H4#lo,$S4 - vmov.u64 $MASK,#-1 + vorn $MASK,$MASK,$MASK @ all-ones vmlal.u32 $D0,$H1#lo,$S4 vshr.u64 $MASK,$MASK,#38 vmlal.u32 $D4,$H0#lo,$R4 |