From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>,
Romain Naour <romain.naour@gmail.com>,
Giulio Benetti <giulio.benetti@benettiengineering.com>,
buildroot@buildroot.org
Subject: Re: [Buildroot] [PATCH] arch/Config.in.arm: drop support for iwmmxt architecture variant
Date: Sun, 25 Sep 2022 14:06:41 +0200 [thread overview]
Message-ID: <20220925120641.GV1419013@scaer> (raw)
In-Reply-To: <20220925094403.1593562-1-thomas.petazzoni@bootlin.com>
Thomas, All,
On 2022-09-25 11:44 +0200, Thomas Petazzoni spake thusly:
> This architecture variant is broken in GCC, causing build failures:
>
> ../../../libgcc/config/arm/unwind-arm.c:467:1: error: unrecognizable insn:
> 467 | }
> | ^
> (insn 2 4 3 2 (set (reg/v/f:SI 118 [ p ])
> (reg:SI 0 r0 [ p ])) "../../../libgcc/config/arm/unwind-arm.c":456:1 -1
> (nil))
> during RTL pass: vregs
> ../../../libgcc/config/arm/unwind-arm.c:467:1: internal compiler error: in extract_insn, at recog.c:2770
>
> Reported to the GCC developers, the feedback was "iwmmxt support is
> definitely bitrotten and most likely should be removed from GCC.".
>
> See:
>
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106972#c1
>
> So this commit simply drops support for iwmmxt, which anyway is
> probably barely used nowadays: it's for old Marvell PXA cores that
> implemented a special SIMD instruction set. The BR2_xscale option can
> be used instead, it's just that it won't use this SIMD instruction
> set.
>
> Fixes:
>
> http://autobuild.buildroot.net/results/8e4c4512902c34d8ec0c6f8dfff92b7a198e4b4a/
>
> and the numerous other build failures at:
>
> http://autobuild.buildroot.net/?reason=host-gcc-initial%&subarch=iwmmxt
>
> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Applied to master, thanks.
Regards,
Yann E. MORIN.
> ---
> Config.in.legacy | 10 ++++++++++
> arch/Config.in.arm | 5 -----
> package/pixman/pixman.mk | 9 ++-------
> 3 files changed, 12 insertions(+), 12 deletions(-)
>
> diff --git a/Config.in.legacy b/Config.in.legacy
> index 5f7274e84b..5892dfd44f 100644
> --- a/Config.in.legacy
> +++ b/Config.in.legacy
> @@ -146,6 +146,16 @@ endif
>
> comment "Legacy options removed in 2022.11"
>
> +config BR2_iwmmxt
> + bool "ARM iwmmxt variant removed"
> + select BR2_LEGACY
> + help
> + Support for the ARM iwmmxt architecture variant in GCC has
> + bitroten and is no longer maintained. GCC maintainers
> + recommend to no longer use it, and suggest to use "xscale"
> + as a replacement architecture variant. See
> + https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106972
> +
> config BR2_PACKAGE_GPSD_OLDSTYLE
> bool "gpsd oldstyle removed"
> select BR2_LEGACY
> diff --git a/arch/Config.in.arm b/arch/Config.in.arm
> index c391d6c72b..78621e321c 100644
> --- a/arch/Config.in.arm
> +++ b/arch/Config.in.arm
> @@ -129,10 +129,6 @@ config BR2_arm926t
> select BR2_ARM_CPU_MAYBE_HAS_VFPV2
> select BR2_ARM_CPU_HAS_THUMB
> select BR2_ARM_CPU_ARMV5
> -config BR2_iwmmxt
> - bool "iwmmxt"
> - select BR2_ARM_CPU_HAS_ARM
> - select BR2_ARM_CPU_ARMV5
> config BR2_xscale
> bool "xscale"
> select BR2_ARM_CPU_HAS_ARM
> @@ -817,7 +813,6 @@ config BR2_GCC_TARGET_CPU
> default "strongarm" if BR2_strongarm
> # armv5
> default "arm926ej-s" if BR2_arm926t
> - default "iwmmxt" if BR2_iwmmxt
> default "xscale" if BR2_xscale
> # armv6
> default "arm1136j-s" if BR2_arm1136j_s
> diff --git a/package/pixman/pixman.mk b/package/pixman/pixman.mk
> index 64302fa49a..3f65f0484d 100644
> --- a/package/pixman/pixman.mk
> +++ b/package/pixman/pixman.mk
> @@ -21,7 +21,8 @@ PIXMAN_AUTORECONF = YES
> # don't build gtk based demos
> PIXMAN_CONF_OPTS = \
> --disable-gtk \
> - --disable-loongson-mmi
> + --disable-loongson-mmi \
> + --disable-arm-iwmmxt
>
> # The ARM SIMD code from pixman requires a recent enough ARM core, but
> # there is a runtime CPU check that makes sure it doesn't get used if
> @@ -40,12 +41,6 @@ else
> PIXMAN_CONF_OPTS += --disable-arm-neon
> endif
>
> -# disable iwmmxt support for CPU's that don't have
> -# this feature
> -ifneq ($(BR2_iwmmxt),y)
> -PIXMAN_CONF_OPTS += --disable-arm-iwmmxt
> -endif
> -
> PIXMAN_CFLAGS = $(TARGET_CFLAGS)
>
> # toolchain gets confused about TLS access through GOT (PIC), so disable TLS
> --
> 2.37.3
>
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
prev parent reply other threads:[~2022-09-25 12:06 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-25 9:44 [Buildroot] [PATCH] arch/Config.in.arm: drop support for iwmmxt architecture variant Thomas Petazzoni
2022-09-25 12:06 ` Yann E. MORIN [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220925120641.GV1419013@scaer \
--to=yann.morin.1998@free.fr \
--cc=bernd.kuhls@t-online.de \
--cc=buildroot@buildroot.org \
--cc=giulio.benetti@benettiengineering.com \
--cc=romain.naour@gmail.com \
--cc=thomas.petazzoni@bootlin.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.