1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- /*
- * setup.ld
- *
- * Linker script for the i386 setup code
- */
- OUTPUT_FORMAT("elf32-i386", "elf32-i386", "elf32-i386")
- OUTPUT_ARCH(i386)
- ENTRY(_start)
- SECTIONS
- {
- . = 0;
- .bstext : { *(.bstext) }
- .bsdata : { *(.bsdata) }
- . = 495;
- .header : { *(.header) }
- .entrytext : { *(.entrytext) }
- .inittext : { *(.inittext) }
- .initdata : { *(.initdata) }
- __end_init = .;
- .text : { *(.text) }
- .text32 : { *(.text32) }
- . = ALIGN(16);
- .rodata : { *(.rodata*) }
- .videocards : {
- video_cards = .;
- *(.videocards)
- video_cards_end = .;
- }
- . = ALIGN(16);
- .data : { *(.data*) }
- .signature : {
- setup_sig = .;
- LONG(0x5a5aaa55)
- }
- . = ALIGN(16);
- .bss :
- {
- __bss_start = .;
- *(.bss)
- __bss_end = .;
- }
- . = ALIGN(16);
- _end = .;
- /DISCARD/ : { *(.note*) }
- /*
- * The ASSERT() sink to . is intentional, for binutils 2.14 compatibility:
- */
- . = ASSERT(_end <= 0x8000, "Setup too big!");
- . = ASSERT(hdr == 0x1f1, "The setup header has the wrong offset!");
- /* Necessary for the very-old-loader check to work... */
- . = ASSERT(__end_init <= 5*512, "init sections too big!");
- }
|