https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101128
Bug ID: 101128
Summary: Decimal floating point fails on ARM with gcc-10/11 but
works with gcc-6/7/8/9
Product: gcc
Version: 10.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: caparson at uwaterloo dot ca
Target Milestone: ---
Created attachment 51036
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51036&action=edit
A short snippet that reproduces the bug on ARM machines
Repro:
compile the following program (also attached) on an ARM machine with gcc-10 or
gcc-11.
void fred() {
1.0DL;
}
You will receive the following error:
gcc-10 test.c
test.c: In function 'fred':
test.c:2:5: error: decimal floating-point not supported for this target
2 | 1.0DL;
| ^~~~~
The two ARM machines we tested this on are Huawei TaiShan 2280 V2 and Raspberry
Pi 4 Model B Rev 1.
Huawei
$ uname -a
Linux algol 5.4.0-74-generic #83-Ubuntu SMP Sat May 8 02:34:05 UTC 2021 aarch64
aarch64 aarch64 GNU/Linux
Raspberrypi
$ uname -a
Linux cfapi1 5.4.0-1036-raspi #39-Ubuntu SMP PREEMPT Wed May 12 17:37:51 UTC
2021 aarch64 aarch64 aarch64 GNU/Linux
If you compile with gcc-6 to gcc-9 this compiles without issue.