Annotation of qemu/roms/ipxe/src/arch/x86/scripts/efi.lds, revision 1.1.1.1

1.1       root        1: /* -*- sh -*- */
                      2: 
                      3: /*
                      4:  * Linker script for EFI images
                      5:  *
                      6:  */
                      7: 
                      8: SECTIONS {
                      9: 
                     10:     /* The file starts at a virtual address of zero, and sections are
                     11:      * contiguous.  Each section is aligned to at least _max_align,
                     12:      * which defaults to 32.  Load addresses are equal to virtual
                     13:      * addresses.
                     14:      */
                     15: 
                     16:     _max_align = 32;
                     17: 
                     18:     /* Allow plenty of space for file headers */
                     19:     . = 0x1000;
                     20: 
                     21:     /*
                     22:      * The text section
                     23:      *
                     24:      */
                     25: 
                     26:     . = ALIGN ( _max_align );
                     27:     .text : {
                     28:        _text = .;
                     29:        *(.text)
                     30:        *(.text.*)
                     31:        _etext = .;
                     32:     }
                     33: 
                     34:     /*
                     35:      * The rodata section
                     36:      *
                     37:      */
                     38: 
                     39:     . = ALIGN ( _max_align );
                     40:     .rodata : {
                     41:        _rodata = .;
                     42:        *(.rodata)
                     43:        *(.rodata.*)
                     44:        _erodata = .;
                     45:     }
                     46: 
                     47:     /*
                     48:      * The data section
                     49:      *
                     50:      */
                     51: 
                     52:     . = ALIGN ( _max_align );
                     53:     .data : {
                     54:        _data = .;
                     55:        *(.data)
                     56:        *(.data.*)
                     57:        KEEP(*(SORT(.tbl.*)))   /* Various tables.  See include/tables.h */
                     58:        _edata = .;
                     59:     }
                     60: 
                     61:     /*
                     62:      * The bss section
                     63:      *
                     64:      */
                     65: 
                     66:     . = ALIGN ( _max_align );
                     67:     .bss : {
                     68:        _bss = .;
                     69:        *(.bss)
                     70:        *(.bss.*)
                     71:        *(COMMON)
                     72:        _ebss = .;
                     73:     }
                     74: 
                     75:     /*
                     76:      * Weak symbols that need zero values if not otherwise defined
                     77:      *
                     78:      */
                     79: 
                     80:     .weak 0x0 : {
                     81:        _weak = .;
                     82:        *(.weak)
                     83:        *(.weak.*)
                     84:        _eweak = .;
                     85:     }
                     86:     _assert = ASSERT ( ( _weak == _eweak ), ".weak is non-zero length" );
                     87: 
                     88:     /*
                     89:      * Dispose of the comment and note sections to make the link map
                     90:      * easier to read
                     91:      *
                     92:      */
                     93: 
                     94:     /DISCARD/ : {
                     95:        *(.comment)
                     96:        *(.comment.*)
                     97:        *(.note)
                     98:        *(.note.*)
                     99:        *(.eh_frame)
                    100:        *(.eh_frame.*)
                    101:        *(.rel)
                    102:        *(.rel.*)
                    103:        *(.einfo)
                    104:        *(.einfo.*)
                    105:        *(.discard)
                    106:        *(.discard.*)
                    107:     }
                    108: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.