[Bug target/64204] New: gcc.dg/c11-atomic-2.c fails on powerpc 64-bit little endian after -mupper-regs patches went in
meissner at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Dec 5 21:31:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64204
Bug ID: 64204
Summary: gcc.dg/c11-atomic-2.c fails on powerpc 64-bit little
endian after -mupper-regs patches went in
Product: gcc
Version: 5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: meissner at gcc dot gnu.org
Host: powerpc64le-unknown-linux-gnu
Target: powerpc64le-unknown-linux-gnu
Build: powerpc64le-unknown-linux-gnu
The test gcc.dg/c11-atomic-2.c fails on powerpc 64-bit little endian when it is
compiled without optimization and the target compiler was configured with
--with-cpu=power8. If you optimize the code, it works, and if you compile it
with the -mno-upper-regs-df option.
The core problem is that an old optimization for Darwin which converts loading
up TFmode constants at RTL generation breaks when DFmode registers can go in
Altivec registers.
While looking at the code, I noticed that we weren't optimizing setting the
TFmode to 0.0L on VSX systems, and added support for that as well.
More information about the Gcc-bugs
mailing list