[Bug c/64459] New: __attribute__((returns_nonnull)) creates wrong code on amd64
rurban@x-ray.at
gcc-bugzilla@gcc.gnu.org
Wed Dec 31 18:51:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64459
Bug ID: 64459
Summary: __attribute__((returns_nonnull)) creates wrong code on
amd64
Product: gcc
Version: 4.9.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
Assignee: unassigned at gcc dot gnu.org
Reporter: rurban@x-ray.at
I had to disable the new returns_nonnull on parrot with gcc 4.9 on amd64,
but it does work fine with clang and the MSVC equivalent __notnull.
I tried the gcc optimizations O0 - O3.
The symptom is a double size in some io buffer, so it does not look related,
it's just some weird side-effect.
But it is.
The patch in question https://gcc.gnu.org/ml/gcc-patches/2013-10/msg00405.html
also looked innocent to me for the beginning.
Since we use 992 returns_nonnull annotated functions in parrot, the bisect
which function and asm exactly is the problem will need some time...
gcc (Debian 4.9.1-19) 4.9.1
More information about the Gcc-bugs
mailing list