Merge pull request #162 from marshmellow42/CoverityFixes
[legacy-proxmark3.git] / armsrc / ldscript
blob34da26bcdfd8cee58e6bfa99cb6bfb4c57eb59af
1 /*
2 -----------------------------------------------------------------------------
3  This code is licensed to you under the terms of the GNU GPL, version 2 or,
4  at your option, any later version. See the LICENSE.txt file for the text of
5  the license.
6 -----------------------------------------------------------------------------
7  Linker script for the ARM binary
8 -----------------------------------------------------------------------------
9 */
10 INCLUDE ../common/ldscript.common
12 PHDRS
14         text PT_LOAD FLAGS(5);
15         data PT_LOAD;
16         bss PT_LOAD;
19 ENTRY(Vector)
20 SECTIONS
22         .start : {
23                 *(.startos)
24         } >osimage :text
26         .text : {
27                 KEEP(*(stage1_image))
28                 *(.text)
29                 *(.text.*)
30                 *(.eh_frame)
31                 *(.glue_7)
32                 *(.glue_7t)
33         } >osimage :text
35         .rodata : {
36                 *(.rodata)
37                 *(.rodata.*)
38                 *(fpga_all_bit.data)
39                 KEEP(*(.version_information))
40                 . = ALIGN(8);
41         } >osimage :text
43         .data : {
44                 KEEP(*(compressed_data))
45                 *(.data)
46                 *(.data.*)
47                 *(.ramfunc)
48                 . = ALIGN(4);
49         } >ram AT>osimage :data
51         __data_src_start__ = LOADADDR(.data);
52         __data_start__ = ADDR(.data);
53         __data_end__ = __data_start__ + SIZEOF(.data);
54         __os_size__ = SIZEOF(.text) + SIZEOF(.data) + SIZEOF(.rodata);
55         
56         .bss : {
57                 __bss_start__ = .; 
58                 *(.bss)
59                 *(.bss.*) 
60                 . = ALIGN(4);
61                 __bss_end__ = .;
62         } >ram AT>ram :bss
64         .commonarea (NOLOAD) : {
65                 *(.commonarea)
66         } >commonarea :NONE