From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 24649 invoked by alias); 28 Jul 2009 17:44:39 -0000 Received: (qmail 24639 invoked by uid 22791); 28 Jul 2009 17:44:39 -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 mx2.redhat.com (HELO mx2.redhat.com) (66.187.237.31) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 28 Jul 2009 17:44:30 +0000 Received: from int-mx2.corp.redhat.com (int-mx2.corp.redhat.com [172.16.27.26]) by mx2.redhat.com (8.13.8/8.13.8) with ESMTP id n6SHiR7Y010959; Tue, 28 Jul 2009 13:44:28 -0400 Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx2.corp.redhat.com (8.13.1/8.13.1) with ESMTP id n6SHiOUc003298; Tue, 28 Jul 2009 13:44:25 -0400 Received: from stone.twiddle.home (vpn-10-211.rdu.redhat.com [10.11.10.211]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id n6SHiNjb016673; Tue, 28 Jul 2009 13:44:24 -0400 Message-ID: <4A6F38F3.5020402@redhat.com> Date: Tue, 28 Jul 2009 17:44:00 -0000 From: Richard Henderson User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1b3pre) Gecko/20090513 Fedora/3.0-2.3.beta2.fc11 Thunderbird/3.0b2 MIME-Version: 1.0 To: Jan Hubicka CC: jh@suse.cz, gcc@gcc.gnu.org Subject: Re: [trans-mem] cgraph edges vs function cloning References: <4A67BF29.9090208@twiddle.net> <20090723172828.GA20017@atrey.karlin.mff.cuni.cz> <4A6E333E.7060402@redhat.com> <20090728171601.GB7178@atrey.karlin.mff.cuni.cz> In-Reply-To: <20090728171601.GB7178@atrey.karlin.mff.cuni.cz> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2009-07/txt/msg00588.txt.bz2 On 07/28/2009 10:16 AM, Jan Hubicka wrote: > There is code in cgraph_copy_node_for_versioning that redirect callers > in the list to new location. Since clonning might render some code > unreachable and remove edges, this can lead to ICE. But since this > was formely invented for IPA-CP, that is now using virtual clones, > perhaps we can simply drop this functionality unless you need it in your > branch? I need nothing complicated from cgraph. An exact duplicate of the original function is perfect. After getting that duplicate, I'll walk through it and make some localized code changes which are just a tad more complicated than simple symbol substitution. After optimization is where the bulk (but not all) of the changes for TM are applied. I guess I'll poke at cleaning this up today. I've got to familiarize myself with how virtual clones work... r~