This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [discuss] RE: [PATCH] [1/2] x86_64: Pass -32 to the assembler when compiling the 32bit vsyscall pages
- From: Andi Kleen <ak at suse dot de>
- To: discuss at x86-64 dot org
- Cc: "H. J. Lu" <hjl at lucon dot org>, "Baker, Brian (ISS - Houston)" <Brian dot B at hp dot com>, torvalds at osdl dot org, akpm at osdl dot org, "Altobelli, David" <david dot altobelli at hp dot com>, binutils at sources dot redhat dot com
- Date: Sat, 22 Apr 2006 00:25:52 +0200
- Subject: Re: [discuss] RE: [PATCH] [1/2] x86_64: Pass -32 to the assembler when compiling the 32bit vsyscall pages
- References: <6095103C4F0ACD4FAE3522E0F27ADF42022CEE33@cceexc13.americas.cpqcorp.net> <20060421145001.GA13830@lucon.org>
> > 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?
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.
> 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.
-Andi