This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/66015] New: align directives not propagated after __attribute__ ((__optimize__ ("O2")))
- From: "chrbr at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 05 May 2015 10:38:56 +0000
- Subject: [Bug target/66015] New: align directives not propagated after __attribute__ ((__optimize__ ("O2")))
- Auto-submitted: auto-generated
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66015
Bug ID: 66015
Summary: align directives not propagated after __attribute__
((__optimize__ ("O2")))
Product: gcc
Version: 6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: chrbr at gcc dot gnu.org
Target Milestone: ---
When attribute optimize is used, the alignment flags are not reevaluated.
Consequently, the functions are not aligned as if they were with the same
global flag
for example:
__attribute__ ((__optimize__ ("O2")))
void
hooray ()
{
}
is not aligned
The second consequence is that can_inline_edge_p fails because opts_for_fn
(caller->decl) != opts_for_fn (callee->decl)) even-though they are compiled
with the same optimization level.