c11c786 ld: Add "-z separate-code" option to ELF linker

Authored and Committed by H.J. Lu 6 years ago
    ld: Add "-z separate-code" option to ELF linker
    
    The new "-z separate-code" option will generate separate code LOAD
    segment which must be in wholly disjoint pages from any other data.
    
    include/
    
    	PR ld/22393
    	* bfdlink.h (bfd_link_info): Add separate_code.
    
    ld/
    
    	PR ld/22393
    	* NEWS: Mention "-z separate-code".
    	* emultempl/elf32.em (gld${EMULATION_NAME}_get_script): Get
    	builtin linker scripts and return linker scripts from disk for
    	"-z separate-code".
    	(gld${EMULATION_NAME}_handle_option): Handle "-z separate-code"
    	and "-z noseparate-code".
    	* genscripts.sh: Generate linker scripts for "-z separate-code".
    	(LD_FLAG): Set to *textonly for "-z separate-code".
    	* ld.texinfo: Document "-z separate-code".
    	* lexsup.c (elf_shlib_list_options): Add linker help messsages
    	for "-z separate-code" and "-z noseparate-code".
    	* scripttempl/elf.sc (SEPARATE_TEXT): New
    	(TEXT_SEGMENT_ALIGN): Likewise.
    	Use ${TEXT_SEGMENT_ALIGN} to align and pad text segment to
    	${MAXPAGESIZE}.
    
        
file modified
+3 -0
file modified
+2 -0
file modified
+91 -9
file modified
+68 -8
file modified
+7 -0
file modified
+4 -0
file modified
+19 -3