https://sourceware.org/bugzilla/show_bug.cgi?id=31948
Bug ID: 31948
Summary: aarch64: binutils does not include FEAT_CSSC in
Armv8.9
Product: binutils
Version: 2.42
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: gas
Assignee: unassigned at sourceware dot org
Reporter: alex at alexrp dot com
Target Milestone: ---
Repro:
$ aarch64-linux-gnu-as --version
GNU assembler (GNU Binutils) 2.42
$ aarch64-linux-gnu-gcc --version
aarch64-linux-gnu-gcc (GCC) 14.1.0
$ cat test.c
int ctz(unsigned int x) { return __builtin_ctz(x); }
$ aarch64-linux-gnu-gcc -march=armv8.9-a test.c
/tmp/ccTqWg96.s: Assembler messages:
/tmp/ccTqWg96.s:14: Error: selected processor does not support `ctz w0,w0'
I initially thought that this might be a GCC bug. But according to the Arm
manual, FEAT_CSSC is mandatory from Armv8.9 if FEAT_AdvSIMD is present, and GCC
considers armv8.9-a (really, armv8-a+) to have AdvSIMD unless the user
indicates otherwise. Checking include/opcode/aarch64.h in binutils, the same
seems to be true here. Yet, binutils notably does not include CSSC in
AARCH64_ARCH_V8_9A_FEATURES. I tried adding it to that macro in my local build
and the sample above built successfully.
--
You are receiving this mail because:
You are on the CC list for the bug.