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