Warning, /bsps/bfin/TLL6527M/start/linkcmds is written in an unsupported language. File is not indexed.
0001 OUTPUT_FORMAT("elf32-bfin", "elf32-bfin",
0002 "elf32-bfin")
0003
0004 OUTPUT_ARCH(bfin)
0005 ENTRY(__start)
0006 STARTUP(start.o)
0007
0008 /*
0009 * Declare some sizes.
0010 */
0011 _RamBase = DEFINED(_RamBase) ? _RamBase : 0x0;
0012 _RamSize = DEFINED(_RamSize) ? _RamSize : 0x04000000;
0013 _RamEnd = _RamBase + _RamSize;
0014 _HeapSize = DEFINED(_HeapSize) ? _HeapSize : 0x10000;
0015
0016 MEMORY
0017 {
0018 sdram(rwx) : ORIGIN = 0x00000100, LENGTH = 0x04000000
0019
0020 l1dataA(rwx) : ORIGIN = 0xff800000, LENGTH = 0x00004000
0021 l1dataAC(rwx) : ORIGIN = 0xff804000, LENGTH = 0x00004000
0022 l1dataB(rwx) : ORIGIN = 0xff900000, LENGTH = 0x00004000
0023 l1dataBC(rwx) : ORIGIN = 0xff904000, LENGTH = 0x00004000
0024
0025 l1code(rwx) : ORIGIN = 0xffa00000, LENGTH = 0x0000C000
0026 l1codeC(rwx) : ORIGIN = 0xffa10000, LENGTH = 0x00004000
0027 scratchpad(rwx) : ORIGIN = 0xffb00000, LENGTH = 0x00001000
0028 }
0029
0030 SECTIONS
0031 {
0032
0033 .init :
0034 {
0035 *(.l1code)
0036 KEEP (*(.init))
0037 } > sdram /*=0*/
0038
0039 .text :
0040 {
0041 CREATE_OBJECT_SYMBOLS
0042 *(.text)
0043 *(.rodata*)
0044 *(.gnu.linkonce.r*)
0045
0046 /*
0047 * Special FreeBSD sysctl sections.
0048 */
0049 . = ALIGN (16);
0050 ___start_set_sysctl_set = .;
0051 *(set_sysctl_*);
0052 ___stop_set_sysctl_set = ABSOLUTE(.);
0053 *(set_domain_*);
0054 *(set_pseudo_*);
0055
0056 _etext = .;
0057
0058 ___CTOR_LIST__ = .;
0059 LONG((___CTOR_END__ - ___CTOR_LIST__) / 4 - 2)
0060 *(.ctors)
0061 LONG(0)
0062 ___CTOR_END__ = .;
0063 ___DTOR_LIST__ = .;
0064 LONG((___DTOR_END__ - ___DTOR_LIST__) / 4 - 2)
0065 *(.dtors)
0066 LONG(0)
0067 ___DTOR_END__ = .;
0068 } > sdram
0069
0070 .tdata : {
0071 __TLS_Data_begin = .;
0072 *(.tdata .tdata.* .gnu.linkonce.td.*)
0073 __TLS_Data_end = .;
0074 } > sdram
0075
0076 .tbss : {
0077 __TLS_BSS_begin = .;
0078 *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon)
0079 __TLS_BSS_end = .;
0080 } > sdram
0081
0082 __TLS_Data_size = __TLS_Data_end - __TLS_Data_begin;
0083 __TLS_Data_begin = __TLS_Data_size != 0 ? __TLS_Data_begin : __TLS_BSS_begin;
0084 __TLS_Data_end = __TLS_Data_size != 0 ? __TLS_Data_end : __TLS_BSS_begin;
0085 __TLS_BSS_size = __TLS_BSS_end - __TLS_BSS_begin;
0086 __TLS_Size = __TLS_BSS_end - __TLS_Data_begin;
0087 __TLS_Alignment = MAX (ALIGNOF (.tdata), ALIGNOF (.tbss));
0088
0089 .fini :
0090 {
0091 KEEP (*(.fini))
0092 } > sdram /*=0*/
0093
0094 .data :
0095 {
0096 *(.data)
0097 KEEP (*(SORT(.rtemsrwset.*)))
0098 *(.jcr)
0099 *(.gnu.linkonce.d*)
0100 CONSTRUCTORS
0101 _edata = .;
0102 } > sdram
0103
0104 .eh_frame : { *(.eh_frame) } > sdram
0105 .data1 : { *(.data1) } > sdram
0106 .eh_frame : { *(.eh_frame) } > sdram
0107 .gcc_except_table : { *(.gcc_except_table*) } > sdram
0108
0109 .rodata :
0110 {
0111 *(.rodata)
0112 *(.rodata.*)
0113 KEEP (*(SORT(.rtemsroset.*)))
0114 *(.gnu.linkonce.r*)
0115 } > sdram
0116
0117
0118 .bss :
0119 {
0120 _bss_start = .;
0121 _clear_start = .;
0122 *(.bss)
0123 *(.gnu.linkonce.b.*)
0124 *(COMMON)
0125 . = ALIGN (64);
0126 _clear_end = .;
0127 _end = .;
0128 __end = .;
0129 } > sdram
0130
0131 .noinit (NOLOAD) : {
0132 *(SORT_BY_NAME (SORT_BY_ALIGNMENT (.noinit*)))
0133 } > sdram
0134
0135 .rtemsstack (NOLOAD) : {
0136 *(SORT(.rtemsstack.*))
0137 _WorkAreaBase = .;
0138 } > sdram
0139
0140 /* Debugging stuff follows */
0141
0142 /* Stabs debugging sections. */
0143 .stab 0 : { *(.stab) }
0144 .stabstr 0 : { *(.stabstr) }
0145 .stab.excl 0 : { *(.stab.excl) }
0146 .stab.exclstr 0 : { *(.stab.exclstr) }
0147 .stab.index 0 : { *(.stab.index) }
0148 .stab.indexstr 0 : { *(.stab.indexstr) }
0149 .comment 0 : { *(.comment) }
0150 /* DWARF debug sections.
0151 Symbols in the DWARF debugging sections are relative to the beginning
0152 of the section so we begin them at 0. */
0153 /* DWARF 1 */
0154 .debug 0 : { *(.debug) }
0155 .line 0 : { *(.line) }
0156 /* GNU DWARF 1 extensions */
0157 .debug_srcinfo 0 : { *(.debug_srcinfo) }
0158 .debug_sfnames 0 : { *(.debug_sfnames) }
0159 /* DWARF 1.1 and DWARF 2 */
0160 .debug_aranges 0 : { *(.debug_aranges) }
0161 .debug_pubnames 0 : { *(.debug_pubnames) }
0162 /* DWARF 2 */
0163 .debug_info 0 : { *(.debug_info) }
0164 .debug_abbrev 0 : { *(.debug_abbrev) }
0165 .debug_line 0 : { *(.debug_line) }
0166 .debug_frame 0 : { *(.debug_frame) }
0167 .debug_str 0 : { *(.debug_str) }
0168 .debug_loc 0 : { *(.debug_loc) }
0169 .debug_macinfo 0 : { *(.debug_macinfo) }
0170 /* SGI/MIPS DWARF 2 extensions */
0171 .debug_weaknames 0 : { *(.debug_weaknames) }
0172 .debug_funcnames 0 : { *(.debug_funcnames) }
0173 .debug_typenames 0 : { *(.debug_typenames) }
0174 .debug_varnames 0 : { *(.debug_varnames) }
0175 /* These must appear regardless of . */
0176
0177 /* Addition to let linker know about custom section for GDB pretty-printing support. */
0178 .debug_gdb_scripts 0 : { *(.debug_gdb_scripts) }
0179 }
0180
0181 __HeapSize = _HeapSize;
0182 __edata = _edata;
0183 __etext = _etext;
0184