-
Notifications
You must be signed in to change notification settings - Fork 146
Expand file tree
/
Copy pathPPC.ld
More file actions
75 lines (63 loc) · 1.64 KB
/
PPC.ld
File metadata and controls
75 lines (63 loc) · 1.64 KB
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
OUTPUT_ARCH( "powerpc" )
ENTRY( _app_entry )
PHDRS
{
text PT_LOAD;
}
SECTIONS
{
. = @WOLFBOOT_LOAD_ADDRESS@;
.text :
{
*(.text._app_entry)
*(.text.main)
*(.text*)
*(.rodata*)
} :text
.data :
{
_start_data = .;
KEEP(*(.data*))
*(.sdata*) /* PPC small initialized data */
. = ALIGN(4);
KEEP(*(.ramcode))
/* preinit data */
. = ALIGN(4);
PROVIDE_HIDDEN (__preinit_array_start = .);
KEEP(*(.preinit_array))
PROVIDE_HIDDEN (__preinit_array_end = .);
/* init data */
. = ALIGN(4);
PROVIDE_HIDDEN (__init_array_start = .);
KEEP(*(SORT(.init_array.*)))
KEEP(*(.init_array))
PROVIDE_HIDDEN (__init_array_end = .);
/* finit data */
. = ALIGN(4);
PROVIDE_HIDDEN (__fini_array_start = .);
KEEP(*(SORT(.fini_array.*)))
KEEP(*(.fini_array))
PROVIDE_HIDDEN (__fini_array_end = .);
_end_data = .;
}
.bss (NOLOAD) :
{
_start_bss = .;
__bss_start__ = .;
*(.bss*)
*(.sbss*) /* PPC small uninitialized data */
*(COMMON)
. = ALIGN(4);
_end_bss = .;
__bss_end__ = .;
_end = .;
}
. = ALIGN(4);
/* Heap for _sbrk (used by syscalls.c malloc) */
_Min_Heap_Size = 0x10000; /* 64KB */
/* Stack: 64KB, grows downward from _stack_top.
* wolfCrypt ECC384 operations need deep stack (~11KB per frame). */
_Min_Stack_Size = 0x10000; /* 64KB */
_stack_end = _end + _Min_Heap_Size;
_stack_top = _stack_end + _Min_Stack_Size;
}