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