Revert r246759.
authorMartin Liska <mliska@suse.cz>
Sat, 8 Apr 2017 17:09:58 +0000 (19:09 +0200)
committerMartin Liska <marxin@gcc.gnu.org>
Sat, 8 Apr 2017 17:09:58 +0000 (17:09 +0000)
From-SVN: r246785

gcc/ChangeLog
gcc/ipa-split.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ipa/pr80212.C [deleted file]

index b1e034596dad4df4d06a305b953454ea708d081a..8c6e57f3a0c028f28538521e91d205786b4a8401 100644 (file)
@@ -1,3 +1,12 @@
+2017-04-08  Martin Liska  <mliska@suse.cz>
+
+       Revert:
+       2017-04-07  Martin Liska  <mliska@suse.cz>
+
+       PR ipa/80212
+       * ipa-split.c (split_function): Add function part to a same comdat
+       group.
+
 2017-04-08  Aaron Sawdey  <acsawdey@linux.vnet.ibm.com>
 
        PR target/80358
index ae1de6f1e63ce59f686e6540edf845998e79f2f6..da3c2c6234460d53f930e0020d6d6c5e3b0c8796 100644 (file)
@@ -1363,9 +1363,6 @@ split_function (basic_block return_bb, struct split_point *split_point,
   /* Let's take a time profile for splitted function.  */
   node->tp_first_run = cur_node->tp_first_run + 1;
 
-  if (cur_node->same_comdat_group)
-    node->add_to_same_comdat_group (cur_node);
-
   /* For usual cloning it is enough to clear builtin only when signature
      changes.  For partial inlining we however can not expect the part
      of builtin implementation to have same semantic as the whole.  */
index 6c21c2859acd750e877b7e82b94a84213ea7183f..38dc5e3194a0842cc5931104713df3076acac056 100644 (file)
@@ -1,3 +1,11 @@
+2017-04-08  Martin Liska  <mliska@suse.cz>
+
+       Revert:
+       2017-04-07  Martin Liska  <mliska@suse.cz>
+
+       PR ipa/80212
+       * g++.dg/ipa/pr80212.C: New test.
+
 2017-04-07  Jakub Jelinek  <jakub@redhat.com>
 
        * gcc.target/i386/avx512f-vgetmantps-2.c: Add -mfpmath=sse to
diff --git a/gcc/testsuite/g++.dg/ipa/pr80212.C b/gcc/testsuite/g++.dg/ipa/pr80212.C
deleted file mode 100644 (file)
index 60d3b61..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-// PR ipa/80212
-// { dg-options "-O2 --param partial-inlining-entry-probability=403796683 -fno-early-inlining" }
-
-struct b
-{
-  virtual b *c () const;
-};
-struct d : virtual b
-{
-};
-struct e : d
-{
-  e *
-  c () const
-  {
-  }
-};
-main () { e a; }