public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "razya at il dot ibm.com" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/49580] New: SPEC2006 GCC benchmark build failure when run with autopar Date: Wed, 29 Jun 2011 14:39:00 -0000 [thread overview] Message-ID: <bug-49580-4@http.gcc.gnu.org/bugzilla/> (raw) http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49580 Summary: SPEC2006 GCC benchmark build failure when run with autopar Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned@gcc.gnu.org ReportedBy: razya@il.ibm.com CC: rakdver@gcc.gnu.org Host: power7 linux Target: power7 linux Build: power7 linux Compilation of reload1.c fails: gcc -c -o reload1.o -DSPEC_CPU -DNDEBUG -I. -fpeel-loops -funroll-loops -fno-tree-vectorize -fno-vect-cost-model -fdump-tree-vect-details -ftree-parallelize-loops=8 -fdump-tree-parloops-details -O3 -falign-functions=16 -falign-loops=32 -m64 -ffast-math -O3 -mrecip=rsqrt -fpeel-loops -funroll-loops -fno-tree-vectorize -fno-vect-cost-model -fdump-tree-vect-details -ftree-parallelize-loops=8 -fdump-tree-parloops-details -g reload1.c reload1.c: In function ‘forget_old_reloads_1’: reload1.c:4095:1: internal compiler error: in gsi_insert_seq_nodes_after, at gimple-iterator.c:251 Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. The failure happens while parallellizing, in gimple_duplicate_sese_tail(): new_rhs = fold_build2 (MINUS_EXPR, TREE_TYPE (gimple_cond_rhs (cond_stmt)), gimple_cond_rhs (cond_stmt), build_int_cst (TREE_TYPE (gimple_cond_rhs (cond_stmt)), 1)); if (TREE_CODE (gimple_cond_rhs (cond_stmt)) == SSA_NAME) { iters_bb = gimple_bb (SSA_NAME_DEF_STMT (gimple_cond_rhs (cond_stmt))); for (gsi1 = gsi_start_bb (iters_bb); !gsi_end_p (gsi1); gsi_next (&gsi1)) if (gsi_stmt (gsi1) == SSA_NAME_DEF_STMT (gimple_cond_rhs (cond_stmt))) break; new_rhs = force_gimple_operand_gsi (&gsi1, new_rhs, true, NULL_TREE,false,GSI_CONTINUE_LINKING); } In this case, iters_bb contains the defining stmt for gimple_cond_rhs (cond_stmt), which is a gimple_phi stmt. Therefore, iterating the stmts of iters_bb will not find the defining stmt and the iterator for force_gimple_operand_gsi (&gsi1, new_rhs, true,...) will be NULL. One solution could be to check whether the defining stmt is a gimple_phi stmt, and handle that correctly. However, there's one other case that is still not covered, that is if the definition of gimple_cond_rhs (cond_stmt) is default_def (in which case iters_bb will be NULL causing segmentation fault) Instead of covering these two missing cases, it seems simpler and more elegant to insert the stmt generated by force_gimple_operand_gsi (&gsi1, new_rhs, true..) to the loop's preheader instead of inserting ti to iters_bb (the RHS of the cond stmt is already defined before entering the loop, therefore can be changed at the preheader) Please assign this bug to me. Thank you.
next reply other threads:[~2011-06-29 14:39 UTC|newest] Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top 2011-06-29 14:39 razya at il dot ibm.com [this message] 2011-06-29 15:08 ` [Bug tree-optimization/49580] " rguenth at gcc dot gnu.org 2011-07-13 10:21 ` razya at il dot ibm.com 2011-07-13 10:22 ` razya at il dot ibm.com
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-49580-4@http.gcc.gnu.org/bugzilla/ \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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).