blob: c09b2a6cc95a29a7dc0e726fd1eddefb5c5410fd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
OUTPUT_ARCH(mips)
/**** Start point ****/
ENTRY(_start) /* Entry point of application */
SECTIONS
{
/**** Code and read-only data ****/
.vector_0x000 0x80000000 :
{
}
.vector_0x100 0x80000100 :
{
}
.vector_0x180 0x80000180 :
{
}
.vector_0x200 0x80000200 :
{
}
.vector_0x280 0x80000280 :
{
}
.vector_0x300 0x80000300 :
{
}
.text 0x80100000 :
{
_ftext = ABSOLUTE(.) ; /* Start of code and read-only data */
start.o(.text) /* Reset entry point */
*(.text*)
_ecode = ABSOLUTE(.) ; /* End of code */
*(.rodata*)
. = ALIGN(8);
_etext = ABSOLUTE(.) ; /* End of code and read-only data */
} = 0
/**** Initialised data ****/
.data :
{
_fdata = ABSOLUTE(.); /* Start of initialised data */
*(.data*)
. = ALIGN(8);
_gp = ABSOLUTE(. + 0x7ff0); /* Base of small data */
LC8 = ABSOLUTE(. + 0x7ff0); /* Base of small data */
*(.lit8)
*(.lit4)
*(.sdata*)
. = ALIGN(8);
_edata = ABSOLUTE(.) ; /* End of initialised data */
}
/**** Uninitialised data ****/
.sbss :
{
_start_sbss = .;
*(.sbss*)
*(.scommon)
_end_sbss = .;
}
.bss :
{
_start_bss = .;
*(.bss*)
*(COMMON)
_ebss = ABSOLUTE(.) ;
_end_bss = .;
}
.stack _ebss :
{
/* Allocate room for stack */
. = ALIGN(8) ;
. += 4096 ;
_sp = . - 16 ;
_stack_top = ABSOLUTE(.) ;
}
_free_memory = _stack_top + 4 ;
.gptab.sdata : { *(.gptab.data) *(.gptab.sdata) }
.gptab.sbss : { *(.gptab.bss) *(.gptab.sbss) }
/DISCARD/ :
{
*(.reginfo)
}
PROVIDE(etext = _etext);
PROVIDE (end = _stack_top);
}
|