Re: It looks like devel/aarch64-none-elf-gcc and other aarch64 */gcc* 's suffer from https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101723

From: Mark Millard <marklmi_at_yahoo.com>
Date: Mon, 18 Apr 2022 21:10:08 UTC
On 2022-Apr-18, at 12:36, Mark Millard <marklmi@yahoo.com> wrote:

> In doing some experiments, it looks like I've run into:
> 
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101723
> 
> which had fixes applied to gcc9 , gcc10, and gcc11 in very
> late 2021-July into Aug (all after the most recent tagged
> release). gcc8 was already out of support or it would have
> had a commit too. ( aarch64-none-elf-gcc is currently at
> 8.4.0 .)
> 
> The specific issue is that for compiles with -march=armv8-a+crc
> specified the result is as if the +crc had not been specified.
> In my context:
> 
> {standard input}: Assembler messages:
> {standard input}:37: Error: selected processor does not support `crc32b w0,w0,w4'
> 
> The description of the fixes starts with:
> 
> QUOTE
>    A change to the way gas interprets the .fpu directive in binutils-2.34
>    means that issuing .fpu will clear any features set by .arch_extension
>    that apply to the floating point or simd units.  This unfortunately
>    causes problems for more recent versions of the architecture because
>    we currently emit .arch, .arch_extension and .fpu directives at
>    different times and try to suppress redundant changes.
> . . .
> END QUOTE
> 
> So seeing the problem or not also depends on the vintage of gas
> in use, possibly explaining this not having been noticed before.
> 
> This was reported separately in:
> 
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104439
> 
> for 11.2.0 and more and specifically for crc32b messages, but was
> classified as a duplicate of the earlier one listed above.
> 
> As far as I can tell no tagged gcc release has the fix yet:
> 
> releases/gcc-11.2.0 (2021-Jul-27, so close: 29th commit)
> releases/gcc-9.4.0  (2021-Jun-01)
> releases/gcc-10.3.0 (2021-Apr-08)
> 
> This interfere with experimenting with an updated U-Boot for
> aarch64.
> 

I looked around and found:

https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=c1cdabe3aab817d95a8db00a8b5e9f6bcdea936f

arm: reorder assembler architecture directives [PR101723]
author	Richard Earnshaw <rearnsha@arm.com>	
Thu, 29 Jul 2021 10:00:31 +0000 (11:00 +0100)
committer	Richard Earnshaw <rearnsha@arm.com>	
Thu, 5 Aug 2021 11:51:14 +0000 (12:51 +0100)
commit	c1cdabe3aab817d95a8db00a8b5e9f6bcdea936f
tree	2e3b5461af89619f316ecefa9d46564aa7514d33	tree
parent	6a37d0331c25f23628d4308e5a75624005c223b2	commit | diff

As well as the refs/heads/releases/gcc-* related commits . . .


https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=c21ba5e57e49b870f1607944c0742e78feb7bc8d
[Wed, 18 Aug 2021 15:22:38 +0000 (16:22 +0100)]

via https://gcc.gnu.org/git?p=gcc.git;a=shortlog;h=refs/heads/releases/gcc-11


https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=02d5a1988247207da46f25ce8b58515e25c1f250
[Mon, 23 Aug 2021 14:31:16 +0000 (15:31 +0100)]

via https://gcc.gnu.org/git/?p=gcc.git;a=shortlog;h=refs/heads/releases/gcc-10


https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=04c568961e793a1d7ad86248b4ca929fc84acf8d
[Mon, 23 Aug 2021 14:39:20 +0000 (15:39 +0100)]

via https://gcc.gnu.org/git/?p=gcc.git;a=shortlog;h=refs/heads/releases/gcc-9


So possibly anything based on more recent snapshots than those
refs/heads/releases/gcc-* related commits have the commit in
place already.

===
Mark Millard
marklmi at yahoo.com