Lei Wen
145e9a0d27
[arch] fix link script not include global array init
...
Using wild match init_array* to include global array init ctor
Before:
10 .ctors 00000040 ffff0000001e6b80 00000000401e6b80 DATA
11 .dtors 00000000 ffff0000001e6bc0 00000000401e6bc0 DATA
12 .got 00000060 ffff0000001e6bc0 00000000401e6bc0 DATA
13 .init_array.1 00000470 ffff0000001e6c20 00000000401e6c20
14 .fini_array.1 00000470 ffff0000001e7090 00000000401e7090
15 .dummy_post_data 00000000 ffff0000001e7500 00000000401e7500 DATA
16 .bss 00009460 ffff0000001e8000 00000000401e8000 BSS
After:
10 .ctors 000004b0 ffff0000001e6b80 00000000401e6b80 DATA
11 .dtors 00000470 ffff0000001e7030 00000000401e7030
12 .got 00000060 ffff0000001e74a0 00000000401e74a0 DATA
13 .dummy_post_data 00000000 ffff0000001e7500 00000000401e7500 DATA
14 .bss 00009460 ffff0000001e8000 00000000401e8000 BSS
Signed-off-by: Lei Wen <leiwen@asrmicro.com >
2025-09-29 22:40:41 -07:00
klemens
d0b90c2d68
[spelling] spelling-fixes. (not external/)
2016-08-25 17:30:34 -07:00
Travis Geiselbrecht
121d0b603b
[arch] tighten up linker scripts to make sure the section sentinels cover just what they need
2015-11-06 19:32:51 -08:00
Travis Geiselbrecht
0e1ce411ba
[make] add ability to set EXTRA_LINKER_SCRIPTS in modules
...
This allows for individual modules to extend the main linker script,
primarily to add their own sections to interate over.
Remove the main shared_* linker scripts.
2015-10-26 16:47:18 -07:00
Arve Hjønnevåg
a29648636b
[arch][arm] Add fault handler table
...
Allows executing an instruction with a custom fault recovery handler.
Can be used with Load/Store Unprivileged to safely access user-space
memory.
Change-Id: Ic617ece7bf5c2440c257b462af8983dde42e5408
2015-08-24 15:47:29 -07:00
Travis Geiselbrecht
986d1590cb
[kernel][vm] first stab at a virtual memory manager
...
Add kernel/vm code to handle memory management in large page-aligned
regions of virtual space. This is composed via a pmm (physical
memory manager) and vmm (virtual memory manager) and the architecturally
specific code to manage the mmu.
Add ARMv7 paging code.
2014-07-11 18:06:37 -07:00
Travis Geiselbrecht
575e7520dd
[arch][arm] fix initializer and destructors in the linker scripts
2013-07-13 21:53:15 -07:00
Travis Geiselbrecht
28bc7f4b6d
[arch] factor some common parts of linker scripts into a separate file
...
INCLUDE the parts of the linker script that are specific to lk into
each of the arch's scripts.
2013-06-20 21:03:56 -07:00
Corey Tabaka
a760678e55
[arch] Add __drivers and __devices arrays to ld scripts.
2013-05-25 15:33:39 -07:00
Travis Geiselbrecht
5c6b69d313
[arch] further linker script cleanup
...
-added COMMON support
-remove SUBALIGN, which was being incorrectly used
-better align sections
2013-01-12 20:35:38 -08:00
Travis Geiselbrecht
86341de1df
[code] add __SRAM section switch, allowing sram functions
...
-On a twosegment system (like all of the cortex-m*) systems, this
allows you to declare a function that lives in sram. On all the others
it has essentially no effect.
2012-11-10 18:26:12 -08:00
Corey Tabaka
5abe2e4722
[arch][arm] Put main translation table into a section to address alignment issues.
2012-10-10 01:27:42 -07:00
Travis Geiselbrecht
9491b0a427
[arm] general cleanup of the linker scripts, synchronize the two variants
2012-05-09 02:08:34 -07:00
Travis Geiselbrecht
fc20e231db
[arm] add .ARM.exidx section to the linker scripts
2012-05-09 01:44:57 -07:00
Travis Geiselbrecht
1286b6b149
[arch][arm] ARM-m threading support
2012-04-23 15:52:29 -07:00
Travis Geiselbrecht
205d3f915d
[arm-m] add initial vector table and initialization code
2012-01-24 16:47:36 -08:00
Travis Geiselbrecht
33c82250a5
[arm] fix problem with gcc 4.4 to ensure the boot code is in the binary
...
seems that gcc 4.4 or the newer binutils likes to put linker generated
shims first in link order. Tweak the boot code to use a special section
that is ordered first by the linker script.
2009-04-24 11:45:25 -07:00
Travis Geiselbrecht
6837223d02
[app] add the app module init system
2009-01-24 21:21:08 -08:00
Brian Swetland
5240291080
[arm] force 4 byte alignment of data segments in the linkscript
2009-01-01 11:46:59 -08:00
Travis Geiselbrecht
1d0df69964
initial commit of lk (little kernel) project
2008-09-01 02:26:09 -07:00