Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/usr.bin/config Linker script TODO items.
details: https://anonhg.NetBSD.org/src/rev/5f57fea4c034
branches: trunk
changeset: 340093:5f57fea4c034
user: uebayasi <uebayasi%NetBSD.org@localhost>
date: Sat Aug 22 14:47:05 2015 +0000
description:
Linker script TODO items.
diffstat:
usr.bin/config/TODO | 33 +++++++++++++++++++++++++++++++++
1 files changed, 33 insertions(+), 0 deletions(-)
diffs (43 lines):
diff -r d0668311a434 -r 5f57fea4c034 usr.bin/config/TODO
--- a/usr.bin/config/TODO Sat Aug 22 14:11:19 2015 +0000
+++ b/usr.bin/config/TODO Sat Aug 22 14:47:05 2015 +0000
@@ -265,6 +265,39 @@
of debug information. In the future .symtab will be copied using linker
during this stage.
+o Preprocess and generate linker scripts dynamically.
+
+ Include opt_xxx.h and replace some constant values (e.g. COHERENCY_UNIT,
+ PAGE_SIZE, KERNEL_BASE_PHYS, KERNEL_BASE_VIRT, ...) with cpp(1).
+
+ Don't unnecessarily define symbols. Don't use sed(1).
+
+o Clean up linker scripts.
+
+ o Don't specify OUTPUT_FORMAT()/OUTPUT_ARCH()
+
+ These are basically set in compilers/linkers. If non-default ABI is used,
+ command-line arguments should be specified.
+
+ o Remove .rel/.rela handlings.
+
+ These are set in relocatable objects, and handled by dynamic linkers.
+ Totally irrelefant for kernels.
+
+ o Clean up debug section handlings.
+
+ o Document (section boundary) symbols set in linker scripts.
+
+ There must be a reason why symbols are defined and exported.
+
+ PROVIDE() is to define internal symbols.
+
+ o Clean up load addresses.
+
+ o Program headers.
+
+ o According to matt@, .ARM.extab/.ARM.exidx sections are no longer needed.
+
o Redesign swapnetbsd.c (root/swap device specification)
Don't build a whole kernel only to specify root/swap devices.
Home |
Main Index |
Thread Index |
Old Index