Module Name: src
Committed By: uebayasi
Date: Thu Aug 20 09:34:54 UTC 2015
Modified Files:
src/sys/arch/i386/conf: kern.ldscript kern.ldscript.4MB
kern.ldscript.Xen
Log Message:
Simplify these by doing AT () relocation once.
To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/sys/arch/i386/conf/kern.ldscript
cvs rdiff -u -r1.13 -r1.14 src/sys/arch/i386/conf/kern.ldscript.4MB
cvs rdiff -u -r1.7 -r1.8 src/sys/arch/i386/conf/kern.ldscript.Xen
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/i386/conf/kern.ldscript
diff -u src/sys/arch/i386/conf/kern.ldscript:1.12 src/sys/arch/i386/conf/kern.ldscript:1.13
--- src/sys/arch/i386/conf/kern.ldscript:1.12 Thu Aug 20 07:00:48 2015
+++ src/sys/arch/i386/conf/kern.ldscript Thu Aug 20 09:34:54 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: kern.ldscript,v 1.12 2015/08/20 07:00:48 uebayasi Exp $ */
+/* $NetBSD: kern.ldscript,v 1.13 2015/08/20 09:34:54 uebayasi Exp $ */
OUTPUT_FORMAT("elf32-i386", "elf32-i386",
"elf32-i386")
@@ -8,17 +8,15 @@ SECTIONS
{
/* Read-only sections, merged into text segment: */
.text :
- AT (ADDR(.text) & 0x0fffffff)
{
*(.text)
*(.text.*)
*(.stub)
- } =0
+ }
_etext = . ;
PROVIDE (etext = .) ;
.rodata :
- AT (LOADADDR(.text) + (ADDR(.rodata) - ADDR(.text)))
{
*(.rodata)
*(.rodata.*)
@@ -29,19 +27,16 @@ SECTIONS
. = ALIGN(0x1000) + (. & (0x1000 - 1));
__data_start = . ;
.data :
- AT (LOADADDR(.text) + (ADDR(.data) - ADDR(.text)))
{
*(.data)
}
. = ALIGN(64); /* COHERENCY_UNIT */
.data.cacheline_aligned :
- AT (LOADADDR(.text) + (ADDR(.data.cacheline_aligned) - ADDR(.text)))
{
*(.data.cacheline_aligned)
}
. = ALIGN(64); /* COHERENCY_UNIT */
.data.read_mostly :
- AT (LOADADDR(.text) + (ADDR(.data.read_mostly) - ADDR(.text)))
{
*(.data.read_mostly)
}
@@ -50,7 +45,6 @@ SECTIONS
PROVIDE (edata = .) ;
__bss_start = . ;
.bss :
- AT (LOADADDR(.text) + (ADDR(.bss) - ADDR(.text)))
{
*(.bss)
*(.bss.*)
@@ -65,3 +59,11 @@ SECTIONS
KEEP(*(.note.netbsd.ident));
}
}
+SECTIONS
+{
+ .text :
+ AT (ADDR(.text) & 0x0fffffff)
+ {
+ *(.text)
+ } =0
+}
Index: src/sys/arch/i386/conf/kern.ldscript.4MB
diff -u src/sys/arch/i386/conf/kern.ldscript.4MB:1.13 src/sys/arch/i386/conf/kern.ldscript.4MB:1.14
--- src/sys/arch/i386/conf/kern.ldscript.4MB:1.13 Thu Aug 20 07:00:48 2015
+++ src/sys/arch/i386/conf/kern.ldscript.4MB Thu Aug 20 09:34:54 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: kern.ldscript.4MB,v 1.13 2015/08/20 07:00:48 uebayasi Exp $ */
+/* $NetBSD: kern.ldscript.4MB,v 1.14 2015/08/20 09:34:54 uebayasi Exp $ */
OUTPUT_FORMAT("elf32-i386", "elf32-i386",
"elf32-i386")
@@ -8,17 +8,15 @@ SECTIONS
{
/* Read-only sections, merged into text segment: */
.text :
- AT (ADDR(.text) & 0x0fffffff)
{
*(.text)
*(.text.*)
*(.stub)
- } =0
+ }
_etext = . ;
PROVIDE (etext = .) ;
.rodata :
- AT (LOADADDR(.text) + (ADDR(.rodata) - ADDR(.text)))
{
*(.rodata)
*(.rodata.*)
@@ -30,19 +28,16 @@ SECTIONS
. = ALIGN(0x400000);
__data_start = . ;
.data :
- AT (LOADADDR(.text) + (ADDR(.data) - ADDR(.text)))
{
*(.data)
}
. = ALIGN(64); /* COHERENCY_UNIT */
.data.cacheline_aligned :
- AT (LOADADDR(.text) + (ADDR(.data.cacheline_aligned) - ADDR(.text)))
{
*(.data.cacheline_aligned)
}
. = ALIGN(64); /* COHERENCY_UNIT */
.data.read_mostly :
- AT (LOADADDR(.text) + (ADDR(.data.read_mostly) - ADDR(.text)))
{
*(.data.read_mostly)
}
@@ -51,7 +46,6 @@ SECTIONS
PROVIDE (edata = .) ;
__bss_start = . ;
.bss :
- AT (LOADADDR(.text) + (ADDR(.bss) - ADDR(.text)))
{
*(.bss)
*(.bss.*)
@@ -66,3 +60,11 @@ SECTIONS
KEEP(*(.note.netbsd.ident));
}
}
+SECTIONS
+{
+ .text :
+ AT (ADDR(.text) & 0x0fffffff)
+ {
+ *(.text)
+ } =0
+}
Index: src/sys/arch/i386/conf/kern.ldscript.Xen
diff -u src/sys/arch/i386/conf/kern.ldscript.Xen:1.7 src/sys/arch/i386/conf/kern.ldscript.Xen:1.8
--- src/sys/arch/i386/conf/kern.ldscript.Xen:1.7 Thu Aug 20 07:00:48 2015
+++ src/sys/arch/i386/conf/kern.ldscript.Xen Thu Aug 20 09:34:54 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: kern.ldscript.Xen,v 1.7 2015/08/20 07:00:48 uebayasi Exp $ */
+/* $NetBSD: kern.ldscript.Xen,v 1.8 2015/08/20 09:34:54 uebayasi Exp $ */
OUTPUT_FORMAT("elf32-i386", "elf32-i386",
"elf32-i386")
@@ -11,7 +11,7 @@ SECTIONS
*(.text)
*(.text.*)
*(.stub)
- } =0
+ }
_etext = . ;
PROVIDE (etext = .) ;
@@ -31,13 +31,11 @@ SECTIONS
}
. = ALIGN(64); /* COHERENCY_UNIT */
.data.cacheline_aligned :
- AT (LOADADDR(.text) + (ADDR(.data.cacheline_aligned) - ADDR(.text)))
{
*(.data.cacheline_aligned)
}
. = ALIGN(64); /* COHERENCY_UNIT */
.data.read_mostly :
- AT (LOADADDR(.text) + (ADDR(.data.read_mostly) - ADDR(.text)))
{
*(.data.read_mostly)
}
@@ -60,3 +58,11 @@ SECTIONS
KEEP(*(.note.netbsd.ident));
}
}
+SECTIONS
+{
+ .text :
+ AT (ADDR(.text))
+ {
+ *(.text)
+ } =0
+}