Back to home page

LXR

 
 

    


0001 #include <asm-generic/vmlinux.lds.h>
0002 #include <asm/thread_info.h>
0003 #include <asm/cache.h>
0004 #include <asm/page.h>
0005 #include <asm/setup.h>
0006 
0007 OUTPUT_FORMAT("elf64-alpha")
0008 OUTPUT_ARCH(alpha)
0009 ENTRY(__start)
0010 PHDRS { kernel PT_LOAD; note PT_NOTE; }
0011 jiffies = jiffies_64;
0012 SECTIONS
0013 {
0014 #ifdef CONFIG_ALPHA_LEGACY_START_ADDRESS
0015     . = 0xfffffc0000310000;
0016 #else
0017     . = 0xfffffc0001010000;
0018 #endif
0019 
0020     _text = .;  /* Text and read-only data */
0021     .text : {
0022         HEAD_TEXT
0023         TEXT_TEXT
0024         SCHED_TEXT
0025         CPUIDLE_TEXT
0026         LOCK_TEXT
0027         *(.fixup)
0028         *(.gnu.warning)
0029     } :kernel
0030     swapper_pg_dir = SWAPPER_PGD;
0031     _etext = .; /* End of text section */
0032 
0033     NOTES :kernel :note
0034     .dummy : {
0035         *(.dummy)
0036     } :kernel
0037 
0038     RODATA
0039     EXCEPTION_TABLE(16)
0040 
0041     /* Will be freed after init */
0042     __init_begin = ALIGN(PAGE_SIZE);
0043     INIT_TEXT_SECTION(PAGE_SIZE)
0044     INIT_DATA_SECTION(16)
0045     PERCPU_SECTION(L1_CACHE_BYTES)
0046     /* Align to THREAD_SIZE rather than PAGE_SIZE here so any padding page
0047        needed for the THREAD_SIZE aligned init_task gets freed after init */
0048     . = ALIGN(THREAD_SIZE);
0049     __init_end = .;
0050     /* Freed after init ends here */
0051 
0052     _sdata = .; /* Start of rw data section */
0053     _data = .;
0054     RW_DATA_SECTION(L1_CACHE_BYTES, PAGE_SIZE, THREAD_SIZE)
0055 
0056     .got : {
0057         *(.got)
0058     }
0059     .sdata : {
0060         *(.sdata)
0061     }
0062     _edata = .; /* End of data section */
0063 
0064     BSS_SECTION(0, 0, 0)
0065     _end = .;
0066 
0067     .mdebug 0 : {
0068         *(.mdebug)
0069     }
0070     .note 0 : {
0071         *(.note)
0072     }
0073 
0074     STABS_DEBUG
0075     DWARF_DEBUG
0076 
0077     DISCARDS
0078 }