This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [csl-arm-branch] __arm__/__thumb__ vs. #machine(arm)
- From: Paul Brook <paul at codesourcery dot com>
- To: Mark Mitchell <mark at codesourcery dot com>,Richard Earnshaw <rearnsha at arm dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Tue, 30 Dec 2003 19:26:57 +0000
- Subject: Re: [csl-arm-branch] __arm__/__thumb__ vs. #machine(arm)
- Organization: CodeSourcery
- References: <200312301612.23412.paul@codesourcery.com>
On Tuesday 30 December 2003 4:12 pm, Paul Brook wrote:
> 2003-30-12 Paul Brook <paul@codesourcery.com>
>
> * config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Always define __arm__.
I just did a clean build and notced that this patch breaks the build. Patch
below fixes the inline assembly in longlong.h. It's been properly tested on
both arm and thumb this time:)
Paul
2003-30-12 Paul Brook <paul@codesourcery.com>
* longlong.h: protect arm inlines with !defined (__thumb__)
? gcc/testsuite/gcc.c-torture/execute/a.out
Index: gcc/longlong.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/longlong.h,v
retrieving revision 1.39
diff -u -r1.39 longlong.h
--- gcc/longlong.h 21 Aug 2003 01:11:41 -0000 1.39
+++ gcc/longlong.h 30 Dec 2003 18:55:38 -0000
@@ -186,7 +186,7 @@
UDItype __umulsidi3 (USItype, USItype);
#endif
-#if defined (__arm__) && W_TYPE_SIZE == 32
+#if defined (__arm__) && !defined (__thumb__) && W_TYPE_SIZE == 32
#define add_ssaaaa(sh, sl, ah, al, bh, bl) \
__asm__ ("adds %1, %4, %5\n\tadc %0, %2, %3" \
: "=r" ((USItype) (sh)), \