# # Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved. # # Link-editor mapfile to create a non-executable bss segment definition # within an executable. This mapfile is similar to map.noexdata that # can be used on x86 architectures to create a non-executable data # segment. On SPARC, the data segment contains a Procedure Linkage # Table (PLT) that must remain executable. # # As the bss segment is extended by sbrk(2) to enlarge the heap, a # non-executable bss segment also results in a non-executable heap. # # The link-editor does not use this file automatically, so one must # use the -M option to cc or ld: # # cc -M /usr/lib/ld/map.noexbss myprogram.c # $mapfile_version 2 LOAD_SEGMENT bss { FLAGS = READ WRITE; }; # See also /usr/lib/ld/map.noexdata.