From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28406 invoked by alias); 18 Jul 2010 21:22:28 -0000 Received: (qmail 28377 invoked by uid 48); 18 Jul 2010 21:22:16 -0000 Date: Sun, 18 Jul 2010 21:22:00 -0000 Message-ID: <20100718212216.28376.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug tree-optimization/44972] [4.6 Regression] ICE: in load_assign_lhs_subreplacements, at tree-sra.c:2475 In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "rguenth at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2010-07/txt/msg01883.txt.bz2 ------- Comment #7 from rguenth at gcc dot gnu dot org 2010-07-18 21:22 ------- More like if (TREE_CODE (*expr) == MEM_REF && TREE_OPERAND (*expr, 0) != ADDR_EXPR) *expr = fold_build2 (MEM_REF, exp_type, TREE_OPERAND (*expr, 0), int_const_binop (PLUS_EXPR, build_int_cst (/* FIMXE */build_pointer_type (exp_type), offset), TREE_OPERAND (*expr, 1), 0)); else *expr = fold_build2 (MEM_REF, exp_type, build_fold_addr_expr (*expr), build_int_cst (/* FIMXE */build_pointer_type (exp_type), offset)); with some cleanup, of course. I'll take another look tomorrow. -- rguenth at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|jamborm at gcc dot gnu dot |rguenth at gcc dot gnu dot |org |org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44972