Multi-target: NEWS and user manual
[deliverable/binutils-gdb.git] / ld / emulparams / elf32lriscv-defs.sh
1 # This is an ELF platform.
2 SCRIPT_NAME=elf
3 ARCH=riscv
4 NO_REL_RELOCS=yes
5
6 TEMPLATE_NAME=elf
7 EXTRA_EM_FILE=riscvelf
8
9 ELFSIZE=32
10
11 if test `echo "$host" | sed -e s/64//` = `echo "$target" | sed -e s/64//`; then
12 case " $EMULATION_LIBPATH " in
13 *" ${EMULATION_NAME} "*)
14 NATIVE=yes
15 ;;
16 esac
17 fi
18
19 # Enable shared library support for everything except an embedded elf target.
20 case "$target" in
21 riscv*-elf)
22 ;;
23 *)
24 GENERATE_SHLIB_SCRIPT=yes
25 GENERATE_PIE_SCRIPT=yes
26 ;;
27 esac
28
29 TEXT_START_ADDR=0x10000
30 MAXPAGESIZE="CONSTANT (MAXPAGESIZE)"
31 COMMONPAGESIZE="CONSTANT (COMMONPAGESIZE)"
32
33 DATA_START_SYMBOLS="${CREATE_SHLIB-__DATA_BEGIN__ = .;}"
34
35 SDATA_START_SYMBOLS="${CREATE_SHLIB-__SDATA_BEGIN__ = .;}
36 *(.srodata.cst16) *(.srodata.cst8) *(.srodata.cst4) *(.srodata.cst2) *(.srodata .srodata.*)"
37
38 INITIAL_READONLY_SECTIONS=".interp : { *(.interp) } ${CREATE_PIE-${INITIAL_READONLY_SECTIONS}}"
39 INITIAL_READONLY_SECTIONS="${RELOCATING+${CREATE_SHLIB-${INITIAL_READONLY_SECTIONS}}}"
40
41 # We must cover as much of sdata as possible if it exists. If sdata+bss is
42 # smaller than 0x1000 then we should start from bss end to cover as much of
43 # the program as possible. But we can't allow gp to cover any of rodata, as
44 # the address of variables in rodata may change during relaxation, so we start
45 # from data in that case.
46 OTHER_END_SYMBOLS="${CREATE_SHLIB-__BSS_END__ = .;
47 __global_pointer$ = MIN(__SDATA_BEGIN__ + 0x800,
48 MAX(__DATA_BEGIN__ + 0x800, __BSS_END__ - 0x800));}"
This page took 0.032757 seconds and 4 git commands to generate.