From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11829 invoked by alias); 21 Apr 2006 23:32:51 -0000 Received: (qmail 11813 invoked by uid 22791); 21 Apr 2006 23:32:50 -0000 X-Spam-Check-By: sourceware.org Received: from smtp102.sbc.mail.re2.yahoo.com (HELO smtp102.sbc.mail.re2.yahoo.com) (68.142.229.103) by sourceware.org (qpsmtpd/0.31) with SMTP; Fri, 21 Apr 2006 23:32:48 +0000 Received: (qmail 44442 invoked from network); 21 Apr 2006 23:32:46 -0000 Received: from unknown (HELO lucon.org) (hjjean@sbcglobal.net@75.0.171.244 with login) by smtp102.sbc.mail.re2.yahoo.com with SMTP; 21 Apr 2006 23:32:46 -0000 Received: by lucon.org (Postfix, from userid 1000) id CDF5964034; Fri, 21 Apr 2006 16:32:44 -0700 (PDT) Date: Mon, 24 Apr 2006 10:13:00 -0000 From: "H. J. Lu" To: Andi Kleen Cc: discuss@x86-64.org, "Baker, Brian (ISS - Houston)" , torvalds@osdl.org, akpm@osdl.org, "Altobelli, David" , binutils@sources.redhat.com Subject: Re: [discuss] RE: [PATCH] [1/2] x86_64: Pass -32 to the assembler when compiling the 32bit vsyscall pages Message-ID: <20060421233244.GA16692@lucon.org> References: <6095103C4F0ACD4FAE3522E0F27ADF42022CEE33@cceexc13.americas.cpqcorp.net> <20060421145001.GA13830@lucon.org> <200604220025.53501.ak@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200604220025.53501.ak@suse.de> User-Agent: Mutt/1.4.2.1i Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org X-SW-Source: 2006-04/txt/msg00315.txt.bz2 On Sat, Apr 22, 2006 at 12:25:52AM +0200, Andi Kleen wrote: > > > > Index: linux/arch/x86_64/ia32/Makefile > > > =================================================================== > > > --- linux.orig/arch/x86_64/ia32/Makefile > > > +++ linux/arch/x86_64/ia32/Makefile > > > @@ -27,5 +27,5 @@ $(obj)/vsyscall-sysenter.so $(obj)/vsysc > > > $(obj)/vsyscall-%.so: $(src)/vsyscall.lds $(obj)/vsyscall-%.o FORCE > > > $(call if_changed,syscall) > > > > > > -AFLAGS_vsyscall-sysenter.o = -m32 > > > -AFLAGS_vsyscall-syscall.o = -m32 > > > +AFLAGS_vsyscall-sysenter.o = -m32 -Wa,-32 > > > +AFLAGS_vsyscall-syscall.o = -m32 -Wa,-32 > > > > I can't reproduce it > > What did you try exactly? I compared the outputs of vsyscall-sysenter.o with -m32 and -m32 -Wa,-32, using gcc 3.4. They are identical. > > You have to recompile the file and either run the pthreads > cancellation test case with the right glibc version, or examine > the unwind tables in the .so by hand. Or just check if the warning > appears or not. There is no need to do that. If you believe the problem is due to binutils 2.16.91.0.5, it is a binutils bug. Please open a bug report at http://www.sourceware.org/bugzilla/ and assign it to me. I need the preprocessed .s file, the expected .o file and the expected .so file with procedures to reproduce the difference. Since they are assembly codes, I will expect -m32 and -m32 -Wa,-32 should generate the same output. > > > with binutils 2.16.91.0.5. Unless you have a bad > > gcc driver, -m32 will pass --32 to assembler, which is the same as -32. > > It definitely fixed the problem here and the warning went away. > gcc used was 4.1 > > But you're right it could have been the gcc - in the case where it worked > I was using gcc 4.0. > Since they are assembly codes, it sounds like a gcc driver issue to me. H.J.