All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] openssl: Fix regression when building for thumb2
@ 2017-03-24 15:01 Max Krummenacher
  2017-03-24 16:42 ` Khem Raj
  0 siblings, 1 reply; 2+ messages in thread
From: Max Krummenacher @ 2017-03-24 15:01 UTC (permalink / raw)
  To: openembedded-core; +Cc: Max Krummenacher

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>
---
 .../0001-Fix-build-with-clang-using-external-assembler.patch        | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/meta/recipes-connectivity/openssl/openssl/0001-Fix-build-with-clang-using-external-assembler.patch b/meta/recipes-connectivity/openssl/openssl/0001-Fix-build-with-clang-using-external-assembler.patch
index 47b83a5..2270962 100644
--- a/meta/recipes-connectivity/openssl/openssl/0001-Fix-build-with-clang-using-external-assembler.patch
+++ b/meta/recipes-connectivity/openssl/openssl/0001-Fix-build-with-clang-using-external-assembler.patch
@@ -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
-- 
2.6.6



^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] openssl: Fix regression when building for thumb2
  2017-03-24 15:01 [PATCH] openssl: Fix regression when building for thumb2 Max Krummenacher
@ 2017-03-24 16:42 ` Khem Raj
  0 siblings, 0 replies; 2+ messages in thread
From: Khem Raj @ 2017-03-24 16:42 UTC (permalink / raw)
  To: Max Krummenacher
  Cc: Max Krummenacher, Patches and discussions about the oe-core layer

On Fri, Mar 24, 2017 at 8:01 AM, Max Krummenacher <max.oss.09@gmail.com> wrote:
> 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:
>

I sent out a similar patch. There are many thumb2 changes that would have
been needed to build this in thumb2 mode. So this patch is fine, which only
enables unified syntax for clang and leaves everything else same.

> | 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>
> ---
>  .../0001-Fix-build-with-clang-using-external-assembler.patch        | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
>
> diff --git a/meta/recipes-connectivity/openssl/openssl/0001-Fix-build-with-clang-using-external-assembler.patch b/meta/recipes-connectivity/openssl/openssl/0001-Fix-build-with-clang-using-external-assembler.patch
> index 47b83a5..2270962 100644
> --- a/meta/recipes-connectivity/openssl/openssl/0001-Fix-build-with-clang-using-external-assembler.patch
> +++ b/meta/recipes-connectivity/openssl/openssl/0001-Fix-build-with-clang-using-external-assembler.patch
> @@ -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
> --
> 2.6.6
>


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-03-24 16:43 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-03-24 15:01 [PATCH] openssl: Fix regression when building for thumb2 Max Krummenacher
2017-03-24 16:42 ` Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.