]> code.ossystems Code Review - openembedded-core.git/commitdiff
openssl: Fix regression when building for thumb2
authorMax Krummenacher <max.oss.09@gmail.com>
Fri, 24 Mar 2017 15:01:14 +0000 (16:01 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 31 Mar 2017 09:09:58 +0000 (10:09 +0100)
Commit 'c8da8ce openssl: Fix build with clang' introduced a regression.
do_compile fails when building with gcc/thumb2.

Note that I did not test if it still builds with clang.

Prevents the following when building with thumb2:

| ghash-armv4.S: Assembler messages:
| ghash-armv4.S:88: Error: thumb conditional instruction should be in IT block -- `ldrplb r12,[r2,r3]'
| ghash-armv4.S:98: conditional infixes are deprecated in unified syntax
| ghash-armv4.S:98: Error: thumb conditional instruction should be in IT block -- `ldrplb r8,[r0,r3]'
| ghash-armv4.S:105: Error: thumb conditional instruction should be in IT block -- `eorpl r12,r12,r8'
| ghash-armv4.S:107: Error: thumb conditional instruction should be in IT block -- `andpl r14,r12,#0xf0'
| ghash-armv4.S:108: Error: thumb conditional instruction should be in IT block -- `andpl r12,r12,#0x0f'
| ghash-armv4.S:144: conditional infixes are deprecated in unified syntax
| ghash-armv4.S:144: Error: thumb conditional instruction should be in IT block -- `ldrneb r12,[r2,#15]'
| ghash-armv4.S:231: conditional infixes are deprecated in unified syntax
| ghash-armv4.S:231: Error: thumb conditional instruction should be in IT block -- `ldrplb r12,[r0,r3]'
| ghash-armv4.S:248: Error: thumb conditional instruction should be in IT block -- `andpl r14,r12,#0xf0'
| ghash-armv4.S:249: Error: thumb conditional instruction should be in IT block -- `andpl r12,r12,#0x0f'

Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-connectivity/openssl/openssl/0001-Fix-build-with-clang-using-external-assembler.patch

index 47b83a589656536802e094327444e491ff3fae9c..2270962a6fd711723ca81524f6719d864aeff6fc 100644 (file)
@@ -29,18 +29,14 @@ diff --git a/crypto/modes/asm/ghash-armv4.pl b/crypto/modes/asm/ghash-armv4.pl
 index 8ccc963ef..442fed4da 100644
 --- a/crypto/modes/asm/ghash-armv4.pl
 +++ b/crypto/modes/asm/ghash-armv4.pl
-@@ -124,7 +124,14 @@ $code=<<___;
+@@ -124,7 +124,10 @@ $code=<<___;
  #include "arm_arch.h"
  
  .text
 +#if defined(__thumb2__) || defined(__clang__)
 +.syntax       unified
 +#endif
-+#if defined(__thumb2__)
-+.thumb
-+#else
  .code 32
-+#endif
  
  #ifdef __clang__
  #define ldrplb        ldrbpl