On 03.11.14 18:53, Joseph Myers wrote:
On Sun, 2 Nov 2014, Andreas Tobler wrote:

        * config/arm/arm.c (arm_init_libfuncs): FreeBSD does not support 8
byte
        atomics for __ARM_ARCH__ < 6 yet.
        (arm_option_override): FreeBSD has not yet implemented unaligned
access.

The __FreeBSD__ conditionals in arm.c are incorrect.  Those would test for
FreeBSD *host*, but you need a conditional for FreeBSD *target* here.


Ouch, yes.

This I'd have to define via config/arm/freebsd.h, right?

#define ARM_FREEBSD

Index: arm.c
===================================================================
--- arm.c       (revision 216539)
+++ arm.c       (working copy)
@@ -2188,7 +2188,11 @@
 {
/* For Linux, we have access to kernel support for atomic operations. */
   if (arm_abi == ARM_ABI_AAPCS_LINUX)
+#ifndef ARM_FREEBSD
     init_sync_libfuncs (2 * UNITS_PER_WORD);
+#else
+    init_sync_libfuncs (UNITS_PER_WORD);
+#endif

....

Thank you!
Andreas


Reply via email to