From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18660 invoked by alias); 30 Jun 2011 15:03:58 -0000 Received: (qmail 18528 invoked by uid 22791); 30 Jun 2011 15:03:57 -0000 X-SWARE-Spam-Status: No, hits=-6.4 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,T_RP_MATCHES_RCVD 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, 30 Jun 2011 15:03:44 +0000 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p5UF3iiU031052 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 30 Jun 2011 11:03:44 -0400 Received: from [127.0.0.1] (ovpn-113-39.phx2.redhat.com [10.3.113.39]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id p5UF3hDR003405; Thu, 30 Jun 2011 11:03:43 -0400 Message-ID: <4E0C904E.8090504@redhat.com> Date: Thu, 30 Jun 2011 15:26:00 -0000 From: Jason Merrill User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.17) Gecko/20110428 Fedora/3.1.10-1.fc14 Lightning/1.0b2 Thunderbird/3.1.10 MIME-Version: 1.0 To: "H.J. Lu" CC: gcc-patches@gcc.gnu.org, Richard Henderson , Jakub Jelinek Subject: Re: PATCH [8/n]: Prepare x32: PR other/48007: Unwind library doesn't work with UNITS_PER_WORD > sizeof (void *) References: <20110625161357.GA5401@intel.com> <4E078E58.20903@redhat.com> <4E07A879.70509@redhat.com> <4E089A88.60401@redhat.com> <4E0C8361.5050403@redhat.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit 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: 2011-06/txt/msg02365.txt.bz2 On 06/30/2011 10:42 AM, H.J. Lu wrote: > Register may be saved/restored either by address or value. My patch > doesn't change the reg field. The other way will be > > #ifdef USE_UNWIND_WORD > _Unwind_Word reg[DWARF_FRAME_REGISTERS+1]; > #else > void *reg[DWARF_FRAME_REGISTERS+1]; > #endif > > We need it so that we are binary compatible with the existing > unwind context. Once we do that we need many > > #ifdef USE_UNWIND_WORD > #endif > > whenever the reg field is accessed since the reg field is changed. But your patch already changes all but one place where reg is accessed. And we can avoid lots of ifdefs by abstraction with macros/inlines so there's one interface. Also, why change SIGNAL_FRAME_BIT? Jason