]> sourceware.org Git - newlib-cygwin.git/blame - libgloss/mips/jmr3904dram-java.ld
If -mfp32, do not enable 64-bit FPR registers on mips3
[newlib-cygwin.git] / libgloss / mips / jmr3904dram-java.ld
CommitLineData
03261851
RK
1/* Linker script forJMR 3904 board using Java + qthreads */
2
3ENTRY(_start)
4OUTPUT_ARCH("mips:3000")
5OUTPUT_FORMAT("elf32-bigmips", "elf32-bigmips", "elf32-littlemips")
6GROUP(-lc -ljmr3904 -lgcc -lgcjcoop)
7SEARCH_DIR(.)
8__DYNAMIC = 0;
9
10PROVIDE (_mem_size = 0x100000); /* JMR3904 comes as standard with 512k of RAM */
11 /* but this is 1 Mb */
12
13/* Set the size of the stack for Java with qthreads. */
14PROVIDE (_Jv_QthreadsStackSize = 0x10000);
15
16/* PROVIDE (__global = 0); */
17
18/*
19 * Initalize some symbols to be zero so we can reference them in the
20 * crt0 without core dumping. These functions are all optional, but
21 * we do this so we can have our crt0 always use them if they exist.
22 * This is so BSPs work better when using the crt0 installed with gcc.
23 * We have to initalize them twice, so we multiple object file
24 * formats, as some prepend an underscore.
25 */
26PROVIDE (hardware_init_hook = 0);
27PROVIDE (software_init_hook = 0);
28
29SECTIONS
30{
31 /* Load everything into DRAM, except for the stack. Put stack in SRAM */
32 . = 0x88000000;
33 /* This is NOT the address which fits with the monitor from jmr. */
34 /* It fits the Cygmon ROMS */
35 .text : {
36 _ftext = . ;
37 *(.init)
38 eprol = .;
39 *(.text)
40 *(.text.*)
41 *(.gnu.linkonce.t*)
42 *(.mips16.fn.*)
43 *(.mips16.call.*)
44 PROVIDE (__runtime_reloc_start = .);
45 *(.rel.sdata)
46 PROVIDE (__runtime_reloc_stop = .);
47 *(.fini)
48 etext = .;
49 _etext = .;
50 }
51 . = .;
52 .rdata : {
53 *(.rdata)
54 *(.rodata)
55 *(.rodata.*)
56 *(.gnu.linkonce.r*)
57 }
58 _fdata = ALIGN(16);
59 .data : {
60 *(.data)
61 *(.data.*)
62 *(.gnu.linkonce.d*)
63 CONSTRUCTORS
64 }
65 . = ALIGN(8);
66 _gp = . + 0x8000;
67 __global = _gp;
68 .lit8 : {
69 *(.lit8)
70 }
71 .lit4 : {
72 *(.lit4)
73 }
74 .sdata : {
75 *(.sdata)
76 *(.sdata.*)
77 *(.gnu.linkonce.s*)
78 }
79 . = ALIGN(4);
80 edata = .;
81 _edata = .;
82 _fbss = .;
83 .sbss : {
84 *(.sbss)
85 *(.scommon)
86 }
87 .bss : {
88 _bss_start = . ;
89 *(.bss)
90 *(COMMON)
91 }
92
93 end = .;
94 _end = .;
95
96 /* Put stack in SRAM (8 Kb); this size is the same as the stack from
97 the original script (when everything was in SRAM). */
98 __stack = 0x8000A000;
99
100 /* DWARF debug sections.
101 Symbols in the DWARF debugging sections are relative to
102 the beginning of the section so we begin them at 0. */
103
104 /* DWARF 1 */
105 .debug 0 : { *(.debug) }
106 .line 0 : { *(.line) }
107
108 /* GNU DWARF 1 extensions */
109 .debug_srcinfo 0 : { *(.debug_srcinfo) }
110 .debug_sfnames 0 : { *(.debug_sfnames) }
111
112 /* DWARF 1.1 and DWARF 2 */
113 .debug_aranges 0 : { *(.debug_aranges) }
114 .debug_pubnames 0 : { *(.debug_pubnames) }
115
116 /* DWARF 2 */
117 .debug_info 0 : { *(.debug_info) }
118 .debug_abbrev 0 : { *(.debug_abbrev) }
119 .debug_line 0 : { *(.debug_line) }
120 .debug_frame 0 : { *(.debug_frame) }
121 .debug_str 0 : { *(.debug_str) }
122 .debug_loc 0 : { *(.debug_loc) }
123 .debug_macinfo 0 : { *(.debug_macinfo) }
124
125 /* SGI/MIPS DWARF 2 extensions */
126 .debug_weaknames 0 : { *(.debug_weaknames) }
127 .debug_funcnames 0 : { *(.debug_funcnames) }
128 .debug_typenames 0 : { *(.debug_typenames) }
129 .debug_varnames 0 : { *(.debug_varnames) }
130}
This page took 0.048831 seconds and 5 git commands to generate.