This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 4/6] rs6000: Cleanup interleave/even_odd/vec_perm.



On 8 Dec 2011, at 21:06, Richard Henderson wrote:


;
+
+  high = (highp == TARGET_BIG_ENDIAN ? 0 : nelt);
+

This breaks bootstrap on ppc-darwin, which came as a bit f a surprise to me...


... however, it would appear that TARGET_BIG_ENDIAN is not used anywhere else...

(plenty of {BYTES,WORDS}_BIG_ENDIAN).

Note that there is no default for TARGET_BIG_ENDIAN in rs600.h - it is only defined in config/rs6000/sysv4.h.

So is the patch below the correct 'obvious' fix, or was something else intended.
cheers
Iain


gcc:

* config/rs6000/darwin.h (TARGET_BIG_ENDIAN): Define to 1.

Index: gcc/config/rs6000/darwin.h
===================================================================
--- gcc/config/rs6000/darwin.h  (revision 182204)
+++ gcc/config/rs6000/darwin.h  (working copy)
@@ -39,6 +39,8 @@

#define TARGET_OBJECT_FORMAT OBJECT_MACHO

+#define TARGET_BIG_ENDIAN 1
+
/* Size of the Obj-C jump buffer. */
#define OBJC_JBLEN ((TARGET_64BIT) ? (26*2 + 18*2 + 129 + 1) : (26 + 18*2 + 129 + 1))




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]