> -----Original Message-----
> From: Kyrylo Tkachov <ktkac...@nvidia.com>
> Sent: Friday, January 17, 2025 1:22 PM
> To: Tamar Christina <tamar.christ...@arm.com>
> Cc: GCC Patches <gcc-patches@gcc.gnu.org>; nd <n...@arm.com>; Richard
> Earnshaw <richard.earns...@arm.com>; ktkac...@gcc.gnu.org; Richard
> Sandiford <richard.sandif...@arm.com>
> Subject: Re: [PATCH]AArch64: Drop ILP32 from default elf multilibs after
> deprecation
> 
> 
> 
> > On 17 Jan 2025, at 14:06, Tamar Christina <tamar.christ...@arm.com> wrote:
> >
> >> -----Original Message-----
> >> From: Kyrylo Tkachov <ktkac...@nvidia.com>
> >> Sent: Friday, January 17, 2025 1:04 PM
> >> To: Tamar Christina <tamar.christ...@arm.com>
> >> Cc: GCC Patches <gcc-patches@gcc.gnu.org>; nd <n...@arm.com>; Richard
> >> Earnshaw <richard.earns...@arm.com>; ktkac...@gcc.gnu.org; Richard
> >> Sandiford <richard.sandif...@arm.com>
> >> Subject: Re: [PATCH]AArch64: Drop ILP32 from default elf multilibs after
> >> deprecation
> >>
> >>
> >>
> >>> On 17 Jan 2025, at 13:56, Tamar Christina <tamar.christ...@arm.com> wrote:
> >>>
> >>> Hi All,
> >>>
> >>> Following the deprecation of ILP32 *-elf builds fail now due to -Werror 
> >>> on the
> >>> deprecation warning.  This is because on embedded builds ILP32 is part of 
> >>> the
> >>> default multilib.
> >>>
> >>> This patch removed it from the default target as the build would fail 
> >>> anyway.
> >>>
> >>> Cross compiled on aarch64-none-elf and build succeeds now.
> >>>
> >>> Ok for master?
> >>
> >> I was going to say that it’s more common to just announce deprecation in 
> >> the
> >> documentation/release notes for one release cycle, to give time for 
> >> potential
> users
> >> to come forward.
> >> If we remove the multilib build now we’d be helping the support bitrot much
> >> faster, which would make it harder to restore if such a user does come 
> >> forward.
> >>
> >
> > The alternative approach would be to suppress the warning during build, the
> downside
> > is ofcourse that this warning does not have a unique identifier, so I 
> > believe we'd
> have to
> > suppress all deprecation warnings:
> >
> > cc1: error: '-mabi=ilp32' is deprecated [-Werror=deprecated]
> >
> > But could work..
> >
> 
> I think if the warning suppression only happened for the ILP32 multilib build 
> that
> would be okay.
> Other deprecation warnings would be caught in the LP64 build

I can make that work by conditionally changing MULTILIB_OPTIONS in
gcc/config/aarch64/t-aarch64 when it's collecting the options for ILP32.

What do others think?

Thanks,
Tamar

> 
> Kyrill
> 
> > Cheers,
> > Tamar
> >
> >> But it also seems odd to build an entire multilib for a deprecated feature 
> >> so I’m
> not
> >> opposed to it.
> >> I don’t know if we document the ILP32 multilib somewhere. If so, it should 
> >> be
> >> updated.
> >> In any case the gcc-15 release notes should also mention this change.
> >>
> >> Thanks,
> >> Kyrill
> >>
> >>>
> >>> Sending this out in case there are no objections to the approach
> >>>
> >>> Thanks,
> >>> Tamar
> >>>
> >>> gcc/ChangeLog:
> >>>
> >>> * config.gcc (aarch64-*-elf): Drop ILP32 from default multilibs.
> >>>
> >>> ---
> >>> diff --git a/gcc/config.gcc b/gcc/config.gcc
> >>> index
> >>
> 55e37146ee0356b67b8a1a09d263eccdf69cd91a..432798d16fdbce099f69821c
> >> 3a0ad91905286777 100644
> >>> --- a/gcc/config.gcc
> >>> +++ b/gcc/config.gcc
> >>> @@ -1210,7 +1210,7 @@ aarch64*-*-elf | aarch64*-*-fuchsia* | aarch64*-
> *-
> >> rtems*)
> >>> esac
> >>> aarch64_multilibs="${with_multilib_list}"
> >>> if test "$aarch64_multilibs" = "default"; then
> >>> - aarch64_multilibs="lp64,ilp32"
> >>> + aarch64_multilibs="lp64"
> >>> fi
> >>> aarch64_multilibs=`echo $aarch64_multilibs | sed -e 's/,/ /g'`
> >>> for aarch64_multilib in ${aarch64_multilibs}; do
> >>>
> >>>
> >>>
> >>>
> >>> --
> >>> <rb19161.patch>
> >

Reply via email to