Hi,
This is an obvious change which checks if gimple seq is empty before inserting 
it.  I built spec2k6 and found the gimple seq in most (if not all) cases is 
empty, we can save a function call here.

Build on x86_64.

Thanks,
bin

2016-05-17 Bin Cheng  <bin.ch...@arm.com>

        * tree-vect-loop.c (vect_create_epilog_for_reduction): Only
        insert gimple seq if it's not empty.
diff --git a/gcc/tree-vect-loop.c b/gcc/tree-vect-loop.c
index d673c67..0aad964 100644
--- a/gcc/tree-vect-loop.c
+++ b/gcc/tree-vect-loop.c
@@ -4373,7 +4373,9 @@ vect_create_epilog_for_reduction (vec<tree> vect_defs, 
gimple *stmt,
       gimple_seq stmts;
       vec_init_def = force_gimple_operand (vec_initial_defs[i], &stmts,
                                           true, NULL_TREE);
-      gsi_insert_seq_on_edge_immediate (loop_preheader_edge (loop), stmts);
+      if (stmts)
+       gsi_insert_seq_on_edge_immediate (loop_preheader_edge (loop), stmts);
+
       def = vect_defs[i];
       for (j = 0; j < ncopies; j++)
         {

Reply via email to