Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/sys/arch/aarch64/conf style, no functional change
details: https://anonhg.NetBSD.org/src/rev/cb2d4d651789
branches: trunk
changeset: 993203:cb2d4d651789
user: maxv <maxv%NetBSD.org@localhost>
date: Thu Aug 30 10:30:05 2018 +0000
description:
style, no functional change
diffstat:
sys/arch/aarch64/conf/kern.ldscript | 176 +++++++++++++++++++----------------
1 files changed, 94 insertions(+), 82 deletions(-)
diffs (188 lines):
diff -r 8a1be6b57a60 -r cb2d4d651789 sys/arch/aarch64/conf/kern.ldscript
--- a/sys/arch/aarch64/conf/kern.ldscript Thu Aug 30 09:59:12 2018 +0000
+++ b/sys/arch/aarch64/conf/kern.ldscript Thu Aug 30 10:30:05 2018 +0000
@@ -5,90 +5,102 @@
"elf64-littleaarch64")
OUTPUT_ARCH(aarch64)
ENTRY(_start)
+
SECTIONS
{
- /* Read-only sections, merged into text segment: */
- .text :
- {
- PROVIDE (__kernel_text = .);
- PROVIDE_HIDDEN (__eprol = .);
- *(.text)
- *(.text.unlikely .text.*_unlikely)
- *(.text.exit .text.exit.*)
- *(.text.startup .text.startup.*)
- *(.text.hot .text.hot.*)
- *(.stub .text.* .gnu.linkonce.t.*)
- /* .gnu.warning sections are handled specially by elf32.em. */
- } =0
- /* Move .rodata to the next L2 block to set unexecutable */
- . = ALIGN (L2_SIZE);
- PROVIDE (__rodata_start = .);
- .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
- .rodata1 : { *(.rodata1) }
- .eh_frame_hdr : { *(.eh_frame_hdr) }
- .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table
- .gcc_except_table.*) }
- /* These sections are generated by the Sun/Oracle C++ compiler. */
- .exception_ranges : ONLY_IF_RO { *(.exception_ranges
- .exception_ranges*) }
- PROVIDE (__etext = .);
- PROVIDE (_etext = .);
- PROVIDE (etext = .);
- /* Adjust the address for the data segment. Move .data to the next L2 block,
- and .text and .rodata will be set readonly if needed. */
- PROVIDE (_erodata = .);
- . = ALIGN (L2_SIZE);
- . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE));
- /* Exception handling */
- .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
- .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
- .exception_ranges : ONLY_IF_RW { *(.exception_ranges .exception_ranges*) }
- .got : { *(.got) *(.igot) }
- . = DATA_SEGMENT_RELRO_END (24, .);
- .got.plt : { *(.got.plt) *(.igot.plt) }
- .data :
- {
- PROVIDE (__data_start = .);
- *(.data .gnu.linkonce.d.*)
- SORT(CONSTRUCTORS)
- }
- .data1 : { *(.data1) }
+ .text :
+ {
+ PROVIDE (__kernel_text = .);
+ PROVIDE_HIDDEN (__eprol = .);
+ *(.text)
+ *(.text.unlikely .text.*_unlikely)
+ *(.text.exit .text.exit.*)
+ *(.text.startup .text.startup.*)
+ *(.text.hot .text.hot.*)
+ *(.stub .text.* .gnu.linkonce.t.*)
+ /* .gnu.warning sections are handled specially by elf32.em. */
+ } =0
+
+ /* Move .rodata to the next L2 block to set unexecutable */
+ . = ALIGN (L2_SIZE);
+ PROVIDE (__rodata_start = .);
+ .rodata : { *(.rodata .rodata.* .gnu.linkonce.r.*) }
+ .rodata1 : { *(.rodata1) }
+ .eh_frame_hdr : { *(.eh_frame_hdr) }
+ .eh_frame : ONLY_IF_RO { KEEP (*(.eh_frame)) }
+ .gcc_except_table : ONLY_IF_RO { *(.gcc_except_table
+ .gcc_except_table.*) }
+
+ /* These sections are generated by the Sun/Oracle C++ compiler. */
+ .exception_ranges : ONLY_IF_RO { *(.exception_ranges
+ .exception_ranges*) }
+ PROVIDE (__etext = .);
+ PROVIDE (_etext = .);
+ PROVIDE (etext = .);
- . = ALIGN(64); /* COHERENCY_UNIT */
- .data.cacheline_aligned :
- {
- *(.data.cacheline_aligned)
- }
- . = ALIGN(64); /* COHERENCY_UNIT */
- .data.read_mostly :
- {
- *(.data.read_mostly)
- }
- . = ALIGN(64); /* COHERENCY_UNIT */
+ /*
+ * Adjust the address for the data segment. Move .data to the next
+ * L2 block, and .text and .rodata will be set readonly if needed.
+ */
+ PROVIDE (_erodata = .);
+ . = ALIGN (L2_SIZE);
+ . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE));
+ /* Exception handling */
+ .eh_frame : ONLY_IF_RW { KEEP (*(.eh_frame)) }
+ .gcc_except_table : ONLY_IF_RW { *(.gcc_except_table .gcc_except_table.*) }
+ .exception_ranges : ONLY_IF_RW { *(.exception_ranges .exception_ranges*) }
+ .got : { *(.got) *(.igot) }
+ . = DATA_SEGMENT_RELRO_END (24, .);
+ .got.plt : { *(.got.plt) *(.igot.plt) }
+ .data :
+ {
+ PROVIDE (__data_start = .);
+ *(.data .gnu.linkonce.d.*)
+ SORT(CONSTRUCTORS)
+ }
+ .data1 : { *(.data1) }
- _edata = .; PROVIDE (edata = .);
- . = .;
- __bss_start = .;
- __bss_start__ = .;
- .bss :
- {
- *(.dynbss)
- *(.bss .bss.* .gnu.linkonce.b.*)
- *(COMMON)
- /* Align here to ensure that the .bss section occupies space up to
- _end. Align after .bss to ensure correct alignment even if the
- .bss section disappears because there are no input sections.
- FIXME: Why do we need it? When there is no .bss section, we don't
- pad the .data section. */
- . = ALIGN(. != 0 ? 32 / 8 : 1);
- }
- _bss_end__ = . ; __bss_end__ = . ;
- . = ALIGN(32 / 8);
- . = ALIGN(32 / 8);
- __end__ = . ;
- _end = .; PROVIDE (end = .);
- . = DATA_SEGMENT_END (.);
- .ARM.attributes 0 : { KEEP (*(.ARM.attributes)) KEEP (*(.gnu.attributes)) }
- .note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }
+ . = ALIGN(64); /* COHERENCY_UNIT */
+ .data.cacheline_aligned :
+ {
+ *(.data.cacheline_aligned)
+ }
+ . = ALIGN(64); /* COHERENCY_UNIT */
+ .data.read_mostly :
+ {
+ *(.data.read_mostly)
+ }
+ . = ALIGN(64); /* COHERENCY_UNIT */
+
+ _edata = .; PROVIDE (edata = .);
+ . = .;
+
+ __bss_start = .;
+ __bss_start__ = .;
+ .bss :
+ {
+ *(.dynbss)
+ *(.bss .bss.* .gnu.linkonce.b.*)
+ *(COMMON)
+
+ /*
+ * Align here to ensure that the .bss section occupies space
+ * up to _end. Align after .bss to ensure correct alignment
+ * even if the .bss section disappears because there are no
+ * input sections.
+ *
+ * FIXME: Why do we need it? When there is no .bss section,
+ * we don't pad the .data section.
+ */
+ . = ALIGN(. != 0 ? 32 / 8 : 1);
+ }
+ _bss_end__ = . ; __bss_end__ = . ;
+ . = ALIGN(32 / 8);
+ . = ALIGN(32 / 8);
+
+ __end__ = . ;
+ _end = .; PROVIDE (end = .);
+ . = DATA_SEGMENT_END (.);
+ .ARM.attributes 0 : { KEEP (*(.ARM.attributes)) KEEP (*(.gnu.attributes)) }
+ .note.gnu.arm.ident 0 : { KEEP (*(.note.gnu.arm.ident)) }
}
Home |
Main Index |
Thread Index |
Old Index