From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10040 invoked by alias); 12 Jun 2011 16:33:19 -0000 Received: (qmail 10032 invoked by uid 22791); 12 Jun 2011 16:33:18 -0000 X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL,BAYES_00,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from nikam.ms.mff.cuni.cz (HELO nikam.ms.mff.cuni.cz) (195.113.20.16) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sun, 12 Jun 2011 16:33:03 +0000 Received: by nikam.ms.mff.cuni.cz (Postfix, from userid 16202) id BA9529AC80B; Sun, 12 Jun 2011 18:33:02 +0200 (CEST) Date: Sun, 12 Jun 2011 17:06:00 -0000 From: Jan Hubicka To: "H.J. Lu" Cc: Jan Hubicka , gcc-patches@gcc.gnu.org Subject: Re: Cgraph alias reorg 15/14 (New infrastructure for same body aliases) Message-ID: <20110612163302.GD19441@kam.mff.cuni.cz> References: <20110611125552.GA25068@kam.mff.cuni.cz> <20110612145443.GA7920@kam.mff.cuni.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.18 (2008-05-17) 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/msg00950.txt.bz2 > On Sun, Jun 12, 2011 at 7:54 AM, Jan Hubicka wrote: > >> > >> This also pretty much destroyed C++ for ia32: > >> > >> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49378 > >> http://gcc.gnu.org/ml/gcc-regression/2011-06/msg00159.html > > > > Hi, > > It seems somewhat amazing that we hit kernel sensitive miscompilation here. > > The problem most probably is the fact that thunks and functions with thunks can become > > local. This is correct since thunks are represented as direct calls now, but this > > makes i386 to use local ABI when calling or compiling them. > > > > For x86-64, we use the same ABI for local and global. But RAX seems > used and uninitialized in thunk. 000000000006d270 <_ZN12_GLOBAL__N_121system_error_categoryD0Ev>: 6d270: 48 8d 05 79 d4 27 00 lea 0x27d479(%rip),%rax # 2ea6f0 <_ZTVN12_GLOBAL__N_121system_error_categoryE+0x10> 6d277: 53 push %rbx 6d278: 48 89 fb mov %rdi,%rbx 6d27b: 48 89 07 mov %rax,(%rdi) 6d27e: e8 55 a0 fe ff callq 572d8 <_ZNSt14error_categoryD2Ev@plt> 6d283: 48 89 df mov %rbx,%rdi 6d286: 5b pop %rbx 6d287: e9 2c 9d fe ff jmpq 56fb8 <_ZdlPv@plt> 6d28c: 90 nop 6d28d: 90 nop 6d28e: 90 nop 6d28f: 90 nop I don't see uinitialized RAX here. It is set by the first LEA I will commit the patch now to unbreak x86 and work on more proper solution after debugging the plugin usses. Thanks for testing! Honza > > -- > H.J.