1/* SPDX-License-Identifier: GPL-2.0 */ 2#include <asm-generic/vmlinux.lds.h> 3#include <asm/page.h> 4#include <asm/setup.h> 5 6OUTPUT_FORMAT("elf64-alpha") 7OUTPUT_ARCH(alpha) 8ENTRY(__start) 9 10SECTIONS 11{ 12 /* 13 * Link the stub at the address the real, uncompressed vmlinux has 14 * always occupied. aboot derives the OSF/1 parameter-page 15 * (ZERO_PGE) and initial stack (INIT_STACK) addresses from the 16 * loaded image's own p_vaddr, so a stub linked anywhere else would 17 * hand the real kernel a parameter page it does not expect. 18 */ 19 . = START_ADDR; 20 21 .head.text : { 22 _head = .; 23 HEAD_TEXT 24 _ehead = .; 25 } 26 27 . = ALIGN(8); 28 .rodata.compressed : { 29 *(.rodata.compressed) 30 } 31 32 . = ALIGN(PAGE_SIZE); 33 .text : { 34 _text = .; 35 *(.text) 36 *(.text.*) 37 _etext = .; 38 } 39 . = ALIGN(8); 40 .rodata : { 41 *(.rodata) 42 *(.rodata.*) 43 } 44 . = ALIGN(8); 45 .data : { 46 *(.data) 47 *(.data.*) 48 } 49 .got : { 50 *(.got) 51 } 52 .sdata : { 53 *(.sdata) 54 } 55 /* 56 * misc.c decompresses to _ebss, so nothing that the stub still 57 * needs may be placed after .bss. --orphan-handling=warn keeps a 58 * new section from silently landing there. 59 */ 60 . = ALIGN(8); 61 .bss : { 62 _bss = .; 63 *(.sbss) 64 *(.scommon) 65 *(.bss) 66 *(.bss.*) 67 *(COMMON) 68 . = ALIGN(8); 69 _ebss = .; 70 } 71 72 STABS_DEBUG 73 DWARF_DEBUG 74 ELF_DETAILS 75 76 DISCARDS 77 /DISCARD/ : { 78 *(.eh_frame) 79 *(.modinfo) 80 *(.note) 81 *(.note.*) 82 } 83} 84