Allow building for ARM thumb. Similar to bug#1202.
authorWerner Koch <wk@gnupg.org>
Mon, 4 Jul 2011 10:45:44 +0000 (12:45 +0200)
committerWerner Koch <wk@gnupg.org>
Mon, 4 Jul 2011 10:45:44 +0000 (12:45 +0200)
mpi/ChangeLog
mpi/longlong.h

index 7d32f5a..4b7b8cf 100644 (file)
@@ -1,3 +1,8 @@
+2011-07-04  Werner Koch  <wk@g10code.com>
+
+       * longlong.h (add_ssaaaa) [__arm__]: Do no use asm if thumb code
+       generation is enabled.  This is bug#1202.  Reported for gpg 1.4.
+
 2011-03-28  Werner Koch  <wk@g10code.com>
 
        * mpi-pow.c (gcry_mpi_powm): Remove unused var RSEC.
index be88cae..5dba793 100644 (file)
@@ -2,7 +2,7 @@
    Note: I added some stuff for use with gnupg
 
 Copyright (C) 1991, 1992, 1993, 1994, 1996, 1998,
-              2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
+              2000, 2001, 2002, 2003, 2004, 2011 Free Software Foundation, Inc.
 
 This file is free software; you can redistribute it and/or modify
 it under the terms of the GNU Lesser General Public License as published by
@@ -184,7 +184,7 @@ extern UDItype __udiv_qrnnd ();
 /***************************************
  **************  ARM  ******************
  ***************************************/
-#if defined (__arm__) && W_TYPE_SIZE == 32
+#if defined (__arm__) && W_TYPE_SIZE == 32 && !defined (__thumb__)
 #define add_ssaaaa(sh, sl, ah, al, bh, bl) \
   __asm__ ("adds %1, %4, %5\n"                                          \
           "adc  %0, %2, %3"                                            \