From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4265 invoked by alias); 21 Mar 2012 21:33:11 -0000 Received: (qmail 4255 invoked by uid 22791); 21 Mar 2012 21:33:10 -0000 X-SWARE-Spam-Status: No, hits=-1.5 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,KAM_STOCKGEN,RCVD_IN_DNSWL_LOW,TW_BJ X-Spam-Check-By: sourceware.org Received: from mail-gy0-f175.google.com (HELO mail-gy0-f175.google.com) (209.85.160.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 21 Mar 2012 21:32:57 +0000 Received: by ghbz2 with SMTP id z2so1469102ghb.20 for ; Wed, 21 Mar 2012 14:32:56 -0700 (PDT) MIME-Version: 1.0 Received: by 10.236.103.226 with SMTP id f62mr5780025yhg.0.1332365576282; Wed, 21 Mar 2012 14:32:56 -0700 (PDT) Received: by 10.100.88.7 with HTTP; Wed, 21 Mar 2012 14:32:56 -0700 (PDT) In-Reply-To: <4D713BAF-3EBA-46A9-AEC7-9484A1D0CC48@sandoe-acoustics.co.uk> References: <4D713BAF-3EBA-46A9-AEC7-9484A1D0CC48@sandoe-acoustics.co.uk> Date: Wed, 21 Mar 2012 21:33:00 -0000 Message-ID: Subject: Re: [patch][objc] Do not call assemble_external From: Steven Bosscher To: Iain Sandoe Cc: GCC Patches , mikestump@comcast.net Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable 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: 2012-03/txt/msg01455.txt.bz2 On Wed, Mar 21, 2012 at 10:23 PM, Iain Sandoe wrote: >> objc/ >> =A0 =A0 =A0 =A0* objc-act (objc_build_ivar_assignment): Do not call >> assemble_external. >> =A0 =A0 =A0 =A0(objc_build_global_assignment): Likewise. >> =A0 =A0 =A0 =A0(objc_build_strong_cast_assignment): Likewise. >> =A0 =A0 =A0 =A0* objc-next-runtime-abi-01.c: Cleanup commented-out >> assemble_external. >> =A0 =A0 =A0 =A0* objc-next-runtime-abi-02.c: Likewise. >> =A0 =A0 =A0 =A0* objc-gnu-runtime-abi-01.c: Likewise. >> > > > ... this would allow us to close PR17982? I believe so, but I have to look into it a but deeper to understand what the remaining assemble_external calls are for. The ones in config/* are OK, they are all for writing out multiple-inheritance thunks. The ones that need checking are: calls.c:1649: assemble_external (fndecl); expr.c:1422: assemble_external (block_move_fn); expr.c:2794: assemble_external (block_clear_fn); expr.c:7423: assemble_external (exp); expr.c:9022: assemble_external (exp); final.c:2745: assemble_external (t); final.c:3497: assemble_external (t); final.c:3568: assemble_external (SYMBOL_REF_DECL (x)); toplev.c:489: assemble_external (decl); > ... and make progress on PR24777? (I'm not sure where exactly we need to = go > with this one - we have different sets of calls depending on the runtime) The FIXMEs in that PR do not exist anymore. Perhaps this removed them: 2011-10-11 Michael Meissner * objc-next-runtime-abi-01.c (objc_build_exc_ptr): Delete old interface with two parallel arrays to hold standard builtin declarations, and replace it with a function based interface that can support creating builtins on the fly in the future. Change all uses, and poison the old names. Make sure 0 is not a legitimate builtin index. * objc-next-runtime-abi-02.c (objc_build_exc_ptr): Ditto. * objc-gnu-runtime-abi-01.c (objc_build_exc_ptr): Ditto. In any case, if there's nothing left to fix for PR24777, I suppose it can be closed as FIXED. Ciao! Steven