1 | # Note: this parameter script is sourced by the other
|
---|
2 | # sh[l]elf(32|64).sh parameter scripts.
|
---|
3 | SCRIPT_NAME=elf
|
---|
4 | OUTPUT_FORMAT=${OUTPUT_FORMAT-"elf32-sh64"}
|
---|
5 | TEXT_START_ADDR=0x1000
|
---|
6 | STACK_ADDR='ALIGN (0x40000) + 0x40000'
|
---|
7 | MAXPAGESIZE=128
|
---|
8 | ARCH=sh
|
---|
9 | MACHINE=sh5
|
---|
10 | ALIGNMENT=8
|
---|
11 | TEMPLATE_NAME=elf32
|
---|
12 | GENERATE_SHLIB_SCRIPT=yes
|
---|
13 | EMBEDDED=yes
|
---|
14 |
|
---|
15 | DATA_START_SYMBOLS='PROVIDE (___data = .);'
|
---|
16 |
|
---|
17 | # If data is located right after .text (not explicitly specified),
|
---|
18 | # then we need to align it to an 8-byte boundary.
|
---|
19 | OTHER_READONLY_SECTIONS='
|
---|
20 | PROVIDE (___rodata = DEFINED (.rodata) ? .rodata : 0);
|
---|
21 | . = ALIGN (8);
|
---|
22 | '
|
---|
23 |
|
---|
24 | # Make _edata and .bss aligned by smuggling in an alignment directive.
|
---|
25 | OTHER_GOT_SECTIONS='. = ALIGN (8);'
|
---|
26 |
|
---|
27 | # These are for compatibility with the COFF toolchain.
|
---|
28 | ENTRY=start
|
---|
29 | CTOR_START='___ctors = .;'
|
---|
30 | CTOR_END='___ctors_end = .;'
|
---|
31 | DTOR_START='___dtors = .;'
|
---|
32 | DTOR_END='___dtors_end = .;'
|
---|
33 |
|
---|
34 | # Do not use the varname=${varname-'string'} construct here; there are
|
---|
35 | # problems with that on some shells (e.g. on Solaris) where there is a bug
|
---|
36 | # that trigs when $varname contains a "}".
|
---|
37 | OTHER_SECTIONS='
|
---|
38 | .cranges 0 : { *(.cranges) }
|
---|
39 | '
|
---|
40 |
|
---|
41 | # We need to adjust sizes in the .cranges section after relaxation, so
|
---|
42 | # we need an after_allocation function, and it goes in this file.
|
---|
43 | EXTRA_EM_FILE=${EXTRA_EM_FILE-sh64elf}
|
---|