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