On Tue, May 01, 2018 at 12:24:44PM +0200, Magnus Granberg wrote: > Hi > > The *_resms64*.S files in libgcc don't have section to remove the > executable stack marking. Can this be added to Gcc 8.0 Rc? > > gcc/ChangeLog: > > 2018-05-01 Magnus Granberg <zo...@gentoo.org> > > * config/i386/cet.h: Add section to remove executable stack marking.
This is incorrect, the cet.h header is an installed header that has nothing to do with whether executable stack is needed or not. The right spot is either the libgcc/config/i386/i386-asm.h header, or the libgcc/config/i386/*ms64*.h headers. And I don't see anything release critical on this, these files are only in libgcc.a and only linked in if somebody uses the ms ABI stuff. I think it can be fixed in 9.0/8.2+ only. > --- a/gcc/config/i386/cet.h 2018-04-20 15:30:13.000000000 +0200 > +++ b/gcc/config/i386/cet.h 2018-05-01 11:45:53.762906162 +0200 > @@ -87,6 +87,9 @@ > 4: > .popsection > # endif /* __CET__ */ > +# ifdef __linux__ > + .section .note.GNU-stack,"",%progbits > +# endif > # endif /* __ELF__ */ > #endif /* __ASSEMBLER__ */ > Jakub