From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21982 invoked by alias); 10 Sep 2009 16:12:58 -0000 Received: (qmail 21959 invoked by uid 22791); 10 Sep 2009 16:12:56 -0000 X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 10 Sep 2009 16:12:50 +0000 Received: from int-mx02.intmail.prod.int.phx2.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n8AGCnUw029334; Thu, 10 Sep 2009 12:12:49 -0400 Received: from stone.twiddle.home (vpn-227-149.phx2.redhat.com [10.3.227.149]) by int-mx02.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id n8AGCm02008704; Thu, 10 Sep 2009 12:12:48 -0400 Message-ID: <4AA9257F.60809@redhat.com> Date: Thu, 10 Sep 2009 16:12:00 -0000 From: Richard Henderson User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.1) Gecko/20090814 Fedora/3.0-2.6.b3.fc11 Thunderbird/3.0b3 MIME-Version: 1.0 To: Richard Guenther CC: gcc-patches@gcc.gnu.org, Diego Novillo Subject: Re: [PATCH] Merge from LTO: eh_personality changes References: <4AA293E4.8090301@redhat.com> <4AA2A9D7.3030406@redhat.com> <4AA67D0C.8000704@redhat.com> <4AA92044.3050800@redhat.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2009-09/txt/msg00709.txt.bz2 On 09/10/2009 09:02 AM, Richard Guenther wrote: > It doesn't seem to work - I get ICEs in > > > #2 0x00000000006d897b in output_addr_const (file=0x163c040, > x=0x2aaaacaa5c80) > at /space/rguenther/src/svn/trunk/gcc/final.c:3619 > 3619 output_operand_lossage ("invalid expression as operand"); > > (gdb) call debug_rtx (x) > (mem:QI (symbol_ref:DI ("__gcc_personality_v0") [flags 0x41]) [0 S1 A8]) > > #3 0x000000000064d3fd in dwarf2out_do_cfi_startproc (second=0 '\000') > at /space/rguenther/src/svn/trunk/gcc/dwarf2out.c:3851 > 3851 output_addr_const (asm_out_file, ref); You have to drop the MEM, of course, i.e. return XEXP (DECL_RTL (decl), 0); Also ideally, we'd give a proper prototype for the personality function. Getting the struct and enum parameters right would be neigh impossible of course, but we could at least give it int personality(int, int, unsigned long long, void*, void*) r~