[PATCH] Correct debug for -mcall-ms2sysv-xlogues stubs (PR target/83917, take 2)

Jakub Jelinek jakub@redhat.com
Mon Feb 26 10:49:00 GMT 2018


On Sun, Feb 25, 2018 at 05:56:28PM -0600, Daniel Santos wrote:
> > --- libgcc/config/i386/i386-asm.h.jj	2018-01-03 10:42:56.317763517 +0100
> > +++ libgcc/config/i386/i386-asm.h	2018-02-22 15:33:43.812922298 +0100
> > @@ -27,8 +27,47 @@ see the files COPYING3 and COPYING.RUNTI
> >  #define I386_ASM_H
> >  
> >  #include "auto-target.h"
> > +#undef PACKAGE_VERSION
> > +#undef PACKAGE_NAME
> > +#undef PACKAGE_STRING
> > +#undef PACKAGE_TARNAME
> > +#undef PACKAGE_URL
> 
> This is a beautiful, temporary(?) fix to an ugly problem!
> 
> >  #include "auto-host.h"

> > --- libgcc/config/i386/cygwin.S.jj	2018-01-03 10:42:56.309763515 +0100
> > +++ libgcc/config/i386/cygwin.S	2018-02-22 15:30:34.597925496 +0100
> > @@ -23,31 +23,13 @@
> >   * <http://www.gnu.org/licenses/>.
> >   */
> >  
> > -#include "auto-host.h"
> 
> The following include should be here.
> 
> +#include "i386-asm.h"

I don't understand this.  i386-asm.h needs (both before my patch and after
it) both auto-host.h and auto-target.h, as it tests
HAVE_GAS_SECTIONS_DIRECTIVE (this one newly, comes from cygwin.S)
HAVE_GAS_HIDDEN
macros defined in auto-host.h
and
HAVE_AS_AVX
macro defined in auto-target.h.
Including auto-host.h when i386-asm.h will include it again just doesn't
work, these headers don't have multiple inclusion guards.  And only including
auto-target.h will work only if the
.hidden
and
.cfi_sections .debug_frame
tests are duplicated from gcc/configure.ac to libgcc/configure.ac, then we
could include just auto-target.h in i386-asm.h.
I've just followed what i386-asm.h has been doing.

	Jakub



More information about the Gcc-patches mailing list