Commit 0065c7eb by Jakub Jelinek Committed by Jakub Jelinek

re PR c++/54988 (fpmath=sse target pragma causes inlining failure because of…

re PR c++/54988 (fpmath=sse target pragma causes inlining failure because of target specific option mismatch)

	PR c++/54988
	* decl2.c (cplus_decl_attributes): Don't return early
	if attributes is NULL.

	* c-c++-common/pr54988.c: New test.

From-SVN: r192722
parent 4b671e64
2012-10-23 Jakub Jelinek <jakub@redhat.com>
PR c++/54988
* decl2.c (cplus_decl_attributes): Don't return early
if attributes is NULL.
2012-10-23 Michael Matz <matz@suse.de>
* tree-ssa-operands.h (struct def_optype_d, def_optype_p): Remove.
......@@ -1309,8 +1309,7 @@ void
cplus_decl_attributes (tree *decl, tree attributes, int flags)
{
if (*decl == NULL_TREE || *decl == void_type_node
|| *decl == error_mark_node
|| attributes == NULL_TREE)
|| *decl == error_mark_node)
return;
if (processing_template_decl)
......@@ -1319,8 +1318,6 @@ cplus_decl_attributes (tree *decl, tree attributes, int flags)
return;
save_template_attributes (&attributes, decl);
if (attributes == NULL_TREE)
return;
}
cp_check_const_attributes (attributes);
......
2012-10-23 Jakub Jelinek <jakub@redhat.com>
PR c++/54988
* c-c++-common/pr54988.c: New test.
2012-10-23 Jan Hubicka <jh@suse.cz>
* gcc.dg/tree-prof/peel-1.c: New testcase.
......
/* PR c++/54988 */
/* { dg-do compile } */
/* { dg-options "-O2" } */
/* { dg-additional-options "-msse2" { target { i?86-*-* x86_64-*-* } } } */
#if defined(__i386__) || defined(__x86_64__)
#pragma GCC target "fpmath=sse"
#endif
static inline __attribute__ ((always_inline)) int
foo (int x)
{
return x;
}
int
bar (int x)
{
return foo (x);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment