ipa-comdats.c (ipa_comdats): Visit all thunks to set proper comdat group.
gcc/ * ipa-comdats.c (ipa_comdats): Visit all thunks to set proper comdat group. gcc/testsuite/ * gcc.target/i386/mpx/chkp-thunk-comdat-1.cc: New. * gcc.target/i386/mpx/chkp-thunk-comdat-2.cc: New. From-SVN: r221896
This commit is contained in:
parent
23ebaa42a2
commit
0e081bde91
5 changed files with 55 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
|||
2015-04-07 Ilya Enkovich <ilya.enkovich@intel.com>
|
||||
|
||||
* ipa-comdats.c (ipa_comdats): Visit all thunks
|
||||
to set proper comdat group.
|
||||
|
||||
2015-04-07 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
|
||||
|
||||
PR target/65489
|
||||
|
|
|
@ -377,7 +377,7 @@ ipa_comdats (void)
|
|||
fprintf (dump_file, "To group: %s\n", IDENTIFIER_POINTER (group));
|
||||
}
|
||||
if (is_a <cgraph_node *> (symbol))
|
||||
dyn_cast <cgraph_node *>(symbol)->call_for_symbol_and_aliases
|
||||
dyn_cast <cgraph_node *>(symbol)->call_for_symbol_thunks_and_aliases
|
||||
(set_comdat_group_1,
|
||||
*comdat_head_map.get (group),
|
||||
true);
|
||||
|
|
|
@ -1,3 +1,8 @@
|
|||
2015-04-07 Ilya Enkovich <ilya.enkovich@intel.com>
|
||||
|
||||
* gcc.target/i386/mpx/chkp-thunk-comdat-1.cc: New.
|
||||
* gcc.target/i386/mpx/chkp-thunk-comdat-2.cc: New.
|
||||
|
||||
2015-04-07 Bin Cheng <bin.cheng@arm.com>
|
||||
|
||||
* gcc.target/arm/pr65647.c: Add option "-mfloat-abi=soft".
|
||||
|
|
18
gcc/testsuite/gcc.target/i386/mpx/chkp-thunk-comdat-1.cc
Normal file
18
gcc/testsuite/gcc.target/i386/mpx/chkp-thunk-comdat-1.cc
Normal file
|
@ -0,0 +1,18 @@
|
|||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -fcheck-pointer-bounds -mmpx" } */
|
||||
|
||||
namespace
|
||||
{
|
||||
template <int dim>
|
||||
int __attribute__((noinline))
|
||||
f1 ()
|
||||
{
|
||||
return dim;
|
||||
}
|
||||
}
|
||||
|
||||
int
|
||||
test ()
|
||||
{
|
||||
return f1<3> ();
|
||||
}
|
26
gcc/testsuite/gcc.target/i386/mpx/chkp-thunk-comdat-2.cc
Normal file
26
gcc/testsuite/gcc.target/i386/mpx/chkp-thunk-comdat-2.cc
Normal file
|
@ -0,0 +1,26 @@
|
|||
/* { dg-do compile } */
|
||||
/* { dg-options "-O2 -fcheck-pointer-bounds -mmpx" } */
|
||||
|
||||
class c1
|
||||
{
|
||||
public:
|
||||
virtual int test1 (const char *);
|
||||
};
|
||||
|
||||
class c2
|
||||
{
|
||||
public:
|
||||
int test2 (const char *);
|
||||
};
|
||||
|
||||
int
|
||||
c1::test1 (const char *)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
c2::test2 (const char *)
|
||||
{
|
||||
return 0;
|
||||
}
|
Loading…
Add table
Reference in a new issue