https://gcc.gnu.org/bugzilla/show_bug.cgi?id=122983
Bug ID: 122983
Summary: g++.dg/cpp26/decomp18.C fails on arm-none-eabi
Product: gcc
Version: 16.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: clyon at gcc dot gnu.org
Target Milestone: ---
Target: arm-eabi
For arm-eabi, we have:
FAIL: g++.dg/cpp26/decomp18.C -std=gnu++11 (test for excess errors)
UNRESOLVED: g++.dg/cpp26/decomp18.C -std=gnu++11 compilation failed to produce
executable
FAIL: g++.dg/cpp26/decomp18.C -std=gnu++14 (test for excess errors)
UNRESOLVED: g++.dg/cpp26/decomp18.C -std=gnu++14 compilation failed to produce
executable
FAIL: g++.dg/cpp26/decomp18.C -std=gnu++17 (test for excess errors)
UNRESOLVED: g++.dg/cpp26/decomp18.C -std=gnu++17 compilation failed to produce
executable
FAIL: g++.dg/cpp26/decomp18.C -std=gnu++23 (test for excess errors)
UNRESOLVED: g++.dg/cpp26/decomp18.C -std=gnu++23 compilation failed to produce
executable
because the linker fails to resolve __aeabi_read_tp:
arm-eabi/bin/ld: /tmp/ccXH8vUA.o: in function `int qux<2>()':
decomp18.C:(.text._Z3quxILi2EEiv[_Z3quxILi2EEiv]+0x4): undefined reference to
`__aeabi_read_tp'
However, when changing the default GCC configuration to:
--with-mode=thumb --with-arch=armv8-a+simd --with-fpu=crypto-neon-fp-armv8
--with-float=hard
and running the testsuite with
-mthumb/-march=armv8-a+simd/-mfpu=auto/-mfloat-abi=hard
link succeeds, but the test fails at runtime (using qemu with "any" CPU):
FAIL: g++.dg/cpp26/decomp18.C -std=gnu++11 execution test
FAIL: g++.dg/cpp26/decomp18.C -std=gnu++14 execution test
FAIL: g++.dg/cpp26/decomp18.C -std=gnu++17 execution test
FAIL: g++.dg/cpp26/decomp18.C -std=gnu++23 execution test