From patchwork Tue May 15 08:59:53 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tristan Gingold X-Patchwork-Id: 159260 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id B0114B6F9A for ; Tue, 15 May 2012 19:00:26 +1000 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=gcc.gnu.org; s=default; x=1337677227; h=Comment: DomainKey-Signature:Received:Received:Received:Received:Received: Received:From:Content-Type:Content-Transfer-Encoding:Subject: Date:Message-Id:To:Mime-Version:Mailing-List:Precedence:List-Id: List-Unsubscribe:List-Archive:List-Post:List-Help:Sender: Delivered-To; bh=N0SQewK/IAHg4XJYZn/uxBo9Oyg=; b=O7dExJazxdcoBR6 3S0NrxEppgKdIfRD/MZcPJXazYgDXfpetJRUUPm0bewt1TZiuuMgbzKVQMbPVWb9 +1gbQU1H6tfcE59WtPeKl13/Wmex4epQDUoZsDmYIp/3H1aoLeqxBn7BDyGMcdwi Eqy53BNyv6wrVzx8qbfyoHlkr51I= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=gcc.gnu.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:Received:Received:From:Content-Type:Content-Transfer-Encoding:Subject:Date:Message-Id:To:Mime-Version:X-IsSubscribed:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=x54TmRQIk2rtYtzNEqjmzljUXGH7f83nKAH/hIUEJxad2p1la1YHvHiPheu79o iUlC5jtV7SFWEP2YR8S+8SgRlQ/EBLyanf3fFRdOksWZBm7rECbqd7GvyXsNNJn/ 53dvZoUOohN33BF62/T/ToT/Rflkpd1pcTID5hfH8tou8=; Received: (qmail 30414 invoked by alias); 15 May 2012 09:00:14 -0000 Received: (qmail 30357 invoked by uid 22791); 15 May 2012 09:00:07 -0000 X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from mel.act-europe.fr (HELO mel.act-europe.fr) (194.98.77.210) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 15 May 2012 08:59:54 +0000 Received: from localhost (localhost [127.0.0.1]) by filtered-smtp.eu.adacore.com (Postfix) with ESMTP id D06D8290069 for ; Tue, 15 May 2012 10:59:59 +0200 (CEST) Received: from mel.act-europe.fr ([127.0.0.1]) by localhost (smtp.eu.adacore.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qb2B+zzhLWD7 for ; Tue, 15 May 2012 10:59:59 +0200 (CEST) Received: from ulanbator.act-europe.fr (ulanbator.act-europe.fr [10.10.1.67]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by mel.act-europe.fr (Postfix) with ESMTP id BE85A290063 for ; Tue, 15 May 2012 10:59:59 +0200 (CEST) From: Tristan Gingold Subject: [Patch]: Fix ICE by expand_expr_addr_expr_1 Date: Tue, 15 May 2012 10:59:53 +0200 Message-Id: <10CC2CE0-9A73-4729-930C-0D0F62560AD9@adacore.com> To: GCC Patches Mime-Version: 1.0 (Apple Message framework v1278) X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Hi, I got ICE in plus_constant (after the assertions were added) due to expand_expr_addr_expr_1 during build on ia64/Openvms. This function is called with TMODE == SImode (32 bit pointers) but EXP designating a variable on the frame (whose register is DImode). Hence the ICE. Fixed by the following patch. No regression on x86-64 GNU/Linux. Ok for trunk ? Tristan. 2012-05-15 Tristan Gingold * expr.c (expand_expr_addr_expr_1): Call convert_memory_address_addr_space. diff --git a/gcc/expr.c b/gcc/expr.c index 3edb4a2..1b0ad8d 100644 --- a/gcc/expr.c +++ b/gcc/expr.c @@ -7600,6 +7600,7 @@ expand_expr_addr_expr_1 (tree exp, rtx target, enum machin TYPE_USER_ALIGN (TREE_TYPE (inner)) = 1; } result = expand_expr_addr_expr_1 (inner, subtarget, tmode, modifier, as); + result = convert_memory_address_addr_space (tmode, result, as); if (offset) {