This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/48326] Target attribute leaks from function pointers


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48326

--- Comment #2 from michael at talamasca dot ocis.net <michael at talamasca dot ocis.net> 2013-03-30 00:26:53 UTC ---
The bug itself seems to have been silently fixed in 4.7.2 or earlier, maybe. 
My testcase no longer causes cmov to be emitted, although this could be an
accidental side effect of other changes.

However, there is a related bug that is definitely still present.  I noticed
the first bug because GCC itself is also an example of code that triggers it. 
This means that modern versions of GCC may fail to bootstrap themselves from
older GCCs that have the original bug.

Fixing this second bug is fairly simple, changing the ifdef that controls SSE
use in libcpp/lex.c to require GCC_VERSION >= 4008 instead of 4005.  (The exact
value is not certain, but it must at least be 4007 since 4.6.0 is known to have
the bug.)

It would be a good idea to fix this in 4.7.3.  As the last version compilable
from C alone, it will be a likely intermediate stop for anyone trying to
bootstrap up from an ancient GCC installation.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]