Commit | Line | Data |
---|---|---|
0e88ffa2 JL |
1 | cat <<EOF |
2 | OUTPUT_FORMAT("${OUTPUT_FORMAT}") | |
3 | OUTPUT_ARCH(h8300h) | |
4 | ||
5 | /* The memory size is 256KB to coincide with the simulator. | |
6 | Don't change either without considering the other. */ | |
7 | ||
8 | MEMORY | |
9 | { | |
10 | /* 0xc4 is a magic entry. We should have the linker just | |
11 | skip over it one day... */ | |
12 | vectors : o = 0x0000, l = 196 | |
13 | magicvectors : o = 0xc4, l = 60 | |
14 | ram : o = 0x0100, l = 256K - 256 - 4 | |
15 | topram : o = 0x3fffc, l = 4 | |
16 | } | |
17 | ||
18 | SECTIONS | |
19 | { | |
20 | .vectors : { | |
21 | /* Use something like this to place a specific function's address | |
22 | into the vector table. | |
23 | ||
24 | LONG(ABSOLUTE(_foobar)) | |
25 | ||
26 | */ | |
27 | *(.vectors) | |
28 | } ${RELOCATING+ > vectors} | |
29 | .text : { | |
30 | *(.text) | |
31 | *(.strings) | |
32 | ${RELOCATING+ _etext = . ; } | |
33 | } ${RELOCATING+ > ram} | |
34 | .tors : { | |
35 | ___ctors = . ; | |
36 | *(.ctors) | |
37 | ___ctors_end = . ; | |
38 | ___dtors = . ; | |
39 | *(.dtors) | |
40 | ___dtors_end = . ; | |
41 | } ${RELOCATING+ > ram} | |
42 | .data : { | |
43 | *(.data) | |
44 | ${RELOCATING+ _edata = . ; } | |
45 | } ${RELOCATING+ > ram} | |
46 | .bss : { | |
47 | ${RELOCATING+ _bss_start = . ;} | |
48 | *(.bss) | |
49 | *(COMMON) | |
50 | ${RELOCATING+ _end = . ; } | |
51 | } ${RELOCATING+ >ram} | |
52 | .stack : { | |
53 | ${RELOCATING+ _stack = . ; } | |
54 | *(.stack) | |
55 | } ${RELOCATING+ > topram} | |
56 | .stab 0 ${RELOCATING+(NOLOAD)} : { | |
57 | [ .stab ] | |
58 | } | |
59 | .stabstr 0 ${RELOCATING+(NOLOAD)} : { | |
60 | [ .stabstr ] | |
61 | } | |
62 | } | |
63 | EOF |