1/* 2 * Copyright 2006, 2007 Freescale Semiconductor, Inc. 3 * 4 * SPDX-License-Identifier: GPL-2.0+ 5 */ 6 7OUTPUT_ARCH(powerpc) 8 9SECTIONS 10{ 11 12 /* Read-only sections, merged into text segment: */ 13 .text : 14 { 15 arch/powerpc/cpu/mpc86xx/start.o (.text*) 16 arch/powerpc/cpu/mpc86xx/traps.o (.text*) 17 *(.text*) 18 } 19 _etext = .; 20 PROVIDE (etext = .); 21 .rodata : 22 { 23 *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) 24 } 25 26 /* Read-write section, merged into data segment: */ 27 . = (. + 0x00FF) & 0xFFFFFF00; 28 _erotext = .; 29 PROVIDE (erotext = .); 30 .reloc : 31 { 32 _GOT2_TABLE_ = .; 33 KEEP(*(.got2)) 34 KEEP(*(.got)) 35 PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4); 36 _FIXUP_TABLE_ = .; 37 KEEP(*(.fixup)) 38 } 39 __got2_entries = ((_GLOBAL_OFFSET_TABLE_ - _GOT2_TABLE_) >> 2) - 1; 40 __fixup_entries = (. - _FIXUP_TABLE_) >> 2; 41 42 .data : 43 { 44 *(.data*) 45 *(.sdata*) 46 } 47 _edata = .; 48 PROVIDE (edata = .); 49 50 . = .; 51 52 . = ALIGN(4); 53 .u_boot_list : { 54 KEEP(*(SORT(.u_boot_list*))); 55 } 56 57 . = .; 58 __start___ex_table = .; 59 __ex_table : { *(__ex_table) } 60 __stop___ex_table = .; 61 62 . = ALIGN(256); 63 __init_begin = .; 64 .text.init : { *(.text.init) } 65 .data.init : { *(.data.init) } 66 . = ALIGN(256); 67 __init_end = .; 68 69 __bss_start = .; 70 .bss (NOLOAD) : 71 { 72 *(.bss*) 73 *(.sbss*) 74 *(COMMON) 75 . = ALIGN(4); 76 } 77 __bss_end = . ; 78 PROVIDE (end = .); 79} 80