From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9478 invoked by alias); 7 Dec 2007 10:59:58 -0000 Received: (qmail 9466 invoked by uid 22791); 7 Dec 2007 10:59:58 -0000 X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org (qpsmtpd/0.31) with ESMTP; Fri, 07 Dec 2007 10:59:50 +0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.13.8/8.13.1) with ESMTP id lB7Axm1Y024561; Fri, 7 Dec 2007 05:59:48 -0500 Received: from devserv.devel.redhat.com (devserv.devel.redhat.com [10.10.36.72]) by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id lB7Axmd4022228; Fri, 7 Dec 2007 05:59:48 -0500 Received: from devserv.devel.redhat.com (localhost.localdomain [127.0.0.1]) by devserv.devel.redhat.com (8.12.11.20060308/8.12.11) with ESMTP id lB7AxmVC007798; Fri, 7 Dec 2007 05:59:48 -0500 Received: (from jakub@localhost) by devserv.devel.redhat.com (8.12.11.20060308/8.12.11/Submit) id lB7Axm0m007796; Fri, 7 Dec 2007 05:59:48 -0500 Date: Fri, 07 Dec 2007 10:59:00 -0000 From: Jakub Jelinek To: Richard Guenther Cc: gcc-patches@gcc.gnu.org, zadeck@naturalbridge.com Subject: Re: [lto] set alias info, poorly Message-ID: <20071207105948.GE13207@devserv.devel.redhat.com> Reply-To: Jakub Jelinek References: <20071206222919.GS14706@codesourcery.com> <84fc9c000712070247g6ac73f01m94e71acfdac039c1@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <84fc9c000712070247g6ac73f01m94e71acfdac039c1@mail.gmail.com> User-Agent: Mutt/1.4.1i 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: 2007-12/txt/msg00324.txt.bz2 On Fri, Dec 07, 2007 at 11:47:46AM +0100, Richard Guenther wrote: > On Dec 6, 2007 11:29 PM, Nathan Froyd wrote: > > First, the good news about this patch: it fixes a few failing testcases. > > > > The bad news is that it does it with a very heavy hammer. We say that > > every type can alias every other type. Obviously this wreaks havoc with > > all the clever alias analysis that has gone into GCC over the years. > > > > There are better, cleverer, more involved ways that you could fix this. > > But this demonstrably works right now. Ideas on what to do in the > > future welcome. > > I believe we have to write out the alias sets and the conflict map and at the > point we combine types of different translation units we have to merge the > alias sets and conflict maps properly. Yeah, basically write LTO's own get_alias_set langhook, which will act as the C one for C CUs, as C++ for C++ CUs, as Fortran for Fortran CUs etc. and additionally define what kind of aliasing is/is not possible for types passed from one language to a different one. Jakub