public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* Drop CONSTRUCTOR comparsion from ipa-icf-gimple
@ 2015-10-16  3:12 Jan Hubicka
  2015-10-16  8:48 ` Richard Biener
  0 siblings, 1 reply; 4+ messages in thread
From: Jan Hubicka @ 2015-10-16  3:12 UTC (permalink / raw)
  To: gcc-patches

Hi,
as Richard noticed in my port of the code to operand_equal_p, the checking of
CONSTURCTOR in ipa-icf-gimple is incomplete missing the index checks.
It is also unnecesary since non-empty ctors does not happen as gimple
operands.  This patch thus removes the unnecesary code.

Bootstrapped/regtested x86_64-linux, comitted.

Honza

	* ipa-icf-gimple.c (func_checker::compare_operand): Compare only
	empty constructors.
Index: ipa-icf-gimple.c
===================================================================
--- ipa-icf-gimple.c	(revision 228851)
+++ ipa-icf-gimple.c	(working copy)
@@ -415,20 +415,9 @@ func_checker::compare_operand (tree t1,
   switch (TREE_CODE (t1))
     {
     case CONSTRUCTOR:
-      {
-	unsigned length1 = vec_safe_length (CONSTRUCTOR_ELTS (t1));
-	unsigned length2 = vec_safe_length (CONSTRUCTOR_ELTS (t2));
-
-	if (length1 != length2)
-	  return return_false ();
-
-	for (unsigned i = 0; i < length1; i++)
-	  if (!compare_operand (CONSTRUCTOR_ELT (t1, i)->value,
-				CONSTRUCTOR_ELT (t2, i)->value))
-	    return return_false();
-
-	return true;
-      }
+      gcc_assert (!vec_safe_length (CONSTRUCTOR_ELTS (t1))
+		  && !vec_safe_length (CONSTRUCTOR_ELTS (t2)));
+      return true;
     case ARRAY_REF:
     case ARRAY_RANGE_REF:
       /* First argument is the array, second is the index.  */

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-10-16 10:55 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-16  3:12 Drop CONSTRUCTOR comparsion from ipa-icf-gimple Jan Hubicka
2015-10-16  8:48 ` Richard Biener
2015-10-16 10:54   ` H.J. Lu
2015-10-16 10:55     ` Jan Hubicka

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).