This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/21098] New: .note.GNU-stack emitted


.note.GNU-stack sections emitted in object files control whether the linker
emits a PT_GNU_STACK header.  This header in turn tells ld.so and the kernel
whether the stack should be executable.  The linker emits the PT_GNU_STACK
header if any input object file has a .note.GNU-stack section, and the header
has the exec bit set if any .note.GNU-stack section is SEC_CODE, *or if any file
is missing the note*.  ie. Linking a mix of files, some of which have the note
section and others that don't, result in PT_GNU_STACK asking for an exec stack.

On powerpc64, nested functions do not require a trampoline on the stack, so
there is no need for an executable stack.  gcc should either emit
.note.GNU-stack section on all object files (remove !defined __powerpc64__ in
the last few lines of config/rs6000/ppc-asm.h), or better, not emit any notes
(not call file_end_indicate_exec_stack when -m64).

-- 
           Summary: .note.GNU-stack emitted
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: target
        AssignedTo: amodra at bigpond dot net dot au
        ReportedBy: amodra at bigpond dot net dot au
                CC: gcc-bugs at gcc dot gnu dot org
GCC target triplet: powerpc64-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21098


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]