Hi Andreas,

On 22/12/15 19:53, Andreas Tobler wrote:
Hi all,

the commit for PR68617 broke boostrap on armv6*-*-freebsd*.

We still have unaligned_access = 0 on armv6 here on FreeBSD.

The commit from the above PR overrides my SUBTARGET_OVERRIDE_OPTIONS I called 
in arm_option_override. And it sets the unaligned_access to 1.

The attached patch fixes this, bootstrap ongoing but passed the breaking stage 
where genmddeps bus errored.

Is this patch ok for trunk once bootstrap completes?

TIA,
Andreas

2015-12-22  Andreas Tobler  <andre...@gcc.gnu.org>

    * config/arm/freebsd.h (SUBTARGET_OVERRIDE_OPTIONS): Adjust to
    check unaligned_access on the gcc_options set.
    * config/arm/arm.c (arm_option_override): Move
    SUBTARGET_OVERRIDE_OPTIONS from here to
    (arm_option_override_internal).


This looks sensible to me with a couple of questions:

--- config/arm/freebsd.h        (revision 231903)
+++ config/arm/freebsd.h        (working copy)
@@ -122,8 +122,8 @@
#define SUBTARGET_OVERRIDE_OPTIONS \
 do {                                           \
-    if (unaligned_access)                      \
-       unaligned_access = 0;                   \
+    if (opts->x_unaligned_access)           \
+       opts->x_unaligned_access = 0;                \
 } while (0)
So FreeBSD doesn't have unaligned_access at all? Even for architecture revisions later than armv6?

Also, do you have access to an arm linux target? Would be nice to perform a 
bootstrap there as well
as a sanity check

If that works then this patch is fine.

Thanks,
Kyrill

Reply via email to