Message ID | 54F985F1.5070103@arm.com |
---|---|
State | New |
Headers | show |
On 03/06/2015 05:48 AM, Szabolcs Nagy wrote: > AArch64 uses arch specific configure.ac fragment to set HAVE_AARCH64_BE > in config.h so later the loader name can be decided based on this macro. > > However config.h.in needs an appropriate line to generate the macro. > > I think the loader name should be managed in a simpler way for future > abi variants. > > Changelog: > > 2015-03-06 Szabolcs Nagy <szabolcs.nagy@arm.com> > > * config.h.in (HAVE_AARCH64_BE): Add. > Since you are talking about the "long term", what you propose is not what we want. Roland, please correct me if I'm wrong, but I think the consensus was that all machine-dependent macros should move out of the top-level config.h.in, and into the machine directories. Unfortunately that requires work and rejiggering and we just keep putting the machine macros into the top-level config.h.in. Cheers, Carlos.
On 6 March 2015 at 16:24, Carlos O'Donell <carlos@redhat.com> wrote: > On 03/06/2015 05:48 AM, Szabolcs Nagy wrote: >> AArch64 uses arch specific configure.ac fragment to set HAVE_AARCH64_BE >> in config.h so later the loader name can be decided based on this macro. >> >> However config.h.in needs an appropriate line to generate the macro. >> >> I think the loader name should be managed in a simpler way for future >> abi variants. >> >> Changelog: >> >> 2015-03-06 Szabolcs Nagy <szabolcs.nagy@arm.com> >> >> * config.h.in (HAVE_AARCH64_BE): Add. >> > > Since you are talking about the "long term", what you propose is > not what we want. > > Roland, please correct me if I'm wrong, but I think the consensus > was that all machine-dependent macros should move out of the top-level > config.h.in, and into the machine directories. > > Unfortunately that requires work and rejiggering and we just keep > putting the machine macros into the top-level config.h.in. Looks to me that this change is need to make the existing configure.ac work as intended. I would have thought it is better to separate such fixes from restructure work. Cheers /Marcus
On 03/06/2015 11:47 AM, Marcus Shawcroft wrote: > On 6 March 2015 at 16:24, Carlos O'Donell <carlos@redhat.com> wrote: >> On 03/06/2015 05:48 AM, Szabolcs Nagy wrote: >>> AArch64 uses arch specific configure.ac fragment to set HAVE_AARCH64_BE >>> in config.h so later the loader name can be decided based on this macro. >>> >>> However config.h.in needs an appropriate line to generate the macro. >>> >>> I think the loader name should be managed in a simpler way for future >>> abi variants. >>> >>> Changelog: >>> >>> 2015-03-06 Szabolcs Nagy <szabolcs.nagy@arm.com> >>> >>> * config.h.in (HAVE_AARCH64_BE): Add. >>> >> >> Since you are talking about the "long term", what you propose is >> not what we want. >> >> Roland, please correct me if I'm wrong, but I think the consensus >> was that all machine-dependent macros should move out of the top-level >> config.h.in, and into the machine directories. >> >> Unfortunately that requires work and rejiggering and we just keep >> putting the machine macros into the top-level config.h.in. > > Looks to me that this change is need to make the existing configure.ac > work as intended. I would have thought it is better to separate such > fixes from restructure work. It is. Sorry, let me be clear, the patch as posted is fine if it is required for AArch64. I was simply talking about "future" things and explaining how we wish this worked. Cheers, Carlos.
On Fri, 6 Mar 2015, Carlos O'Donell wrote: > Roland, please correct me if I'm wrong, but I think the consensus > was that all machine-dependent macros should move out of the top-level > config.h.in, and into the machine directories. That's bug 14068. (The wiki todo list identifies some other cases where we still need to get architecture-specific cases out of generic files.)
On 6 March 2015 at 10:48, Szabolcs Nagy <szabolcs.nagy@arm.com> wrote: > 2015-03-06 Szabolcs Nagy <szabolcs.nagy@arm.com> > > * config.h.in (HAVE_AARCH64_BE): Add. Committed. /Marcus
diff --git a/config.h.in b/config.h.in index 695ca35..73ddb9c 100644 --- a/config.h.in +++ b/config.h.in @@ -260,4 +260,7 @@ /* The PowerPC64 ELFv2 ABI is being used. */ #undef HAVE_ELFV2_ABI +/* AArch64 big endian ABI */ +#undef HAVE_AARCH64_BE + #endif