From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22007 invoked by alias); 1 Jun 2006 12:22:15 -0000 Received: (qmail 21820 invoked by uid 48); 1 Jun 2006 12:22:02 -0000 Date: Thu, 01 Jun 2006 12:22:00 -0000 Message-ID: <20060601122202.21819.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug tree-optimization/27341] [4.2 Regression] ICE in in add_virtual_operand with complex types In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "dberlin at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2006-06/txt/msg00033.txt.bz2 List-Id: ------- Comment #8 from dberlin at gcc dot gnu dot org 2006-06-01 12:22 ------- The SMT related stuff is a red herring. Someone is not marking things for renaming when they should be. The following patch will show that (it disables the used alone code). Index: tree-ssa-operands.c =================================================================== --- tree-ssa-operands.c (revision 114136) +++ tree-ssa-operands.c (working copy) @@ -1294,12 +1294,12 @@ add_virtual_operand (tree var, stmt_ann_ || none_added || (TREE_CODE (var) == SYMBOL_MEMORY_TAG && for_clobber - && SMT_USED_ALONE (var))) + /*&& SMT_USED_ALONE (var)*/)) { /* Every bare SMT def we add should have SMT_USED_ALONE set on it, or else we will get the wrong answer on clobbers. */ - if (none_added + if (0 && none_added && !updating_used_alone && aliases_computed_p && TREE_CODE (var) == SYMBOL_MEMORY_TAG) gcc_assert (SMT_USED_ALONE (var)); -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27341