001: /* JagELFls script for ELF Debug executable */
002:
003: /* Memory description */
004: MEMORY
005: {
006: ram (rwx) : ORIGIN = 0x4000 , LENGTH = 0x1FC000 /* Jaguar 2MB RAM information */
007: dbg : ORIGIN = 0, LENGTH = 0x7FFFFF
008: }
009:
010: /* Sections opening */
011: SECTIONS
012: {
013: .text: /* Program code section */
014: {
015: . = ALIGN(2); /* M68000 preference alignement */
016: *(.text CODE); /* Code section */
017: } >ram
018:
019: .rodata: /* Constant data section */
020: {
021: . = ALIGN(2); /* M68000 preference alignement */
022: *(.rodata* RODATA); /* Read-only Data section */
023: } >ram
024:
025: .data: /* Static data section */
026: {
027: . = ALIGN(2); /* M68000 preference alignement */
028: *(.data DATA); /* Data section */
029: } >ram
030:
031: .sdata:
032: {
033: . = ALIGN(2); /* M68000 preference alignement */
034: *(.sdata SDATA);
035: } >ram
036:
037: .bss:
038: {
039: . = ALIGN(2); /* M68000 preference alignement */
040: PROVIDE(__bss_start__ = .); /* BSS start */
041: *(.sbss SBSS); /* Small-Short BSS */
042: *(.scommon SCOMMON);
043: *(.bss BSS);
044: *(.udata UDATA);
045: *(.common COMMON);
046: PROVIDE(__bss_end__ = .); /* BSS end */
047: __bss_size__ = (__bss_end__-__bss_start__); /* BSS size */
048: } >ram
049:
050: .heap:
051: {
052: . = ALIGN(2); /* M68000 preference alignement */
053: PROVIDE(__HeapBase = .);
054: *(.heap HEAP);
055: } >ram
056:
057: .stack:
058: {
059: PROVIDE(__Stack = 0x200000);
060: } >ram
061:
062: /* DWARF debug sections. */
063: /* Symbols in the DWARF debugging sections are relative to the beginning of the section so we begin them at 0. */
064:
065: /* DWARF 1 */
066: .debug 0:
067: {
068: *(.debug)
069: } >dbg
070: .line 0:
071: {
072: *(.line)
073: } >dbg
074:
075: /* GNU DWARF 1 extensions */
076: .debug_srcinfo 0:
077: {
078: *(.debug_srcinfo)
079: } >dbg
080: .debug_sfnames 0:
081: {
082: *(.debug_sfnames)
083: } >dbg
084:
085: /* DWARF 1.1 and DWARF 2 */
086: .debug_aranges 0:
087: {
088: *(.debug_aranges)
089: } >dbg
090: .debug_ranges 0:
091: {
092: *(.debug_ranges)
093: } >dbg
094: .debug_pubnames 0:
095: {
096: *(.debug_pubnames)
097: } >dbg
098:
099: /* DWARF 2 */
100: .debug_info 0:
101: {
102: *(.debug_info .gnu.linkonce.wi.*)
103: } >dbg
104: .debug_abbrev 0:
105: {
106: *(.debug_abbrev)
107: } >dbg
108: .debug_line 0:
109: {
110: *(.debug_line)
111: } >dbg
112: .debug_frame 0:
113: {
114: *(.debug_frame)
115: } >dbg
116: .debug_str 0:
117: {
118: *(.debug_str) /* String table used in .debug_info */
119: } >dbg
120: .debug_loc 0:
121: {
122: *(.debug_loc) /* Location lists used in the DW_AT_location attributes */
123: } >dbg
124: .debug_macinfo 0:
125: {
126: *(.debug_macinfo) /* Macro information */
127: } >dbg
128: .comment 0:
129: {
130: *(.comment) /* ? */
131: } >dbg
132: }