Loading...
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 | #include <asm-generic/vmlinux.lds.h> #include <asm/page.h> #include "sizes.h" #ifndef CONFIG_64BIT OUTPUT_FORMAT("elf32-hppa-linux") OUTPUT_ARCH(hppa) #else OUTPUT_FORMAT("elf64-hppa-linux") OUTPUT_ARCH(hppa:hppa2.0w) #endif ENTRY(startup) SECTIONS { /* palo loads at 0x60000 */ /* loaded kernel will move to 0x10000 */ . = 0xe0000; /* should not overwrite palo code */ .head.text : { _head = . ; HEAD_TEXT _ehead = . ; } /* keep __gp below 0x1000000 */ #ifdef CONFIG_64BIT . = ALIGN(16); /* Linkage tables */ .opd : { __start_opd = .; *(.opd) __end_opd = .; } PROVIDE (__gp = .); .plt : { *(.plt) } .dlt : { *(.dlt) } #endif _startcode_end = .; /* vmlinux.bin.gz is here */ . = ALIGN(8); .rodata.compressed : { *(.rodata.compressed) } /* bootloader code and data starts at least behind area of extracted kernel */ . = MAX(ABSOLUTE(.), (SZ_end - SZparisc_kernel_start + KERNEL_BINARY_TEXT_START)); /* align on next page boundary */ . = ALIGN(4096); .text : { _text = .; /* Text */ *(.text) *(.text.*) _etext = . ; } . = ALIGN(8); .data : { _data = . ; *(.data) *(.data.*) _edata = . ; } . = ALIGN(8); .rodata : { _rodata = . ; *(.rodata) /* read-only data */ *(.rodata.*) _erodata = . ; } . = ALIGN(8); .bss : { _bss = . ; *(.bss) *(.bss.*) *(COMMON) . = ALIGN(4096); _ebss = .; } STABS_DEBUG ELF_DETAILS .note 0 : { *(.note) } /* Sections to be discarded */ DISCARDS /DISCARD/ : { #ifdef CONFIG_64BIT /* temporary hack until binutils is fixed to not emit these * for static binaries */ *(.PARISC.unwind) /* no unwind data */ *(.interp) *(.dynsym) *(.dynstr) *(.dynamic) *(.hash) *(.gnu.hash) #endif } } |