From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4017 invoked by alias); 16 Oct 2002 09:31:44 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 4010 invoked from network); 16 Oct 2002 09:31:43 -0000 Received: from unknown (HELO nikam.ms.mff.cuni.cz) (195.113.18.106) by sources.redhat.com with SMTP; 16 Oct 2002 09:31:43 -0000 Received: from camelot.ms.mff.cuni.cz (kampanus.ms.mff.cuni.cz [195.113.18.107]) by nikam.ms.mff.cuni.cz (Postfix) with SMTP id 4C3924DEDA; Wed, 16 Oct 2002 11:31:43 +0200 (CEST) Received: by camelot.ms.mff.cuni.cz (sSMTP sendmail emulation); Wed, 16 Oct 2002 11:31:42 +0200 Date: Wed, 16 Oct 2002 04:06:00 -0000 From: Jan Hubicka To: Michael Matz Cc: Richard Henderson , Olivier Hainque , Jan Hubicka , gcc@gcc.gnu.org Subject: Re: Question on fixup_abnormal_edges Message-ID: <20021016093142.GH1083@kam.mff.cuni.cz> References: <20021015230235.GM25225@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.3.28i X-SW-Source: 2002-10/txt/msg00930.txt.bz2 > Hi, > > On Tue, 15 Oct 2002, Richard Henderson wrote: > > > > When using table driven EH, is it expected that possibly call clobbered hard > > > registers get assigned to pseudos live across calls like in the case above ? > > > > Well, except for caller-save not being intelligent enough to > > add the instruction to the edge, rather than directly after > > the call instruction, everything would have worked out ok. > > Erh. You can't add insns on an abnormal edge, if it's critical. I don't > remember this very case, but is it guaranteed, that abcall/eh edges are > not critical? EH edges are abnormal and can be critical. You can add insns to them, if you update split_edge. (ie teoretically it is possible, but our current framework can't deal with these) It can be good idea to add code for that, as GCSE would be much happier then too. I think that EH kills registers anyway, so this is not problem. I think problem is different. The call with live register over is noreturn, so there should really be no register alive at first place. Hope I will find time to investigate this more at evening. Honza