Changeset a3aa1e1 in mainline


Ignore:
Timestamp:
2006-03-13T12:29:56Z (19 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
b419162
Parents:
8f9239e
Message:

Unify init linker scripts to contain two properly aligned and properly flagged segments.

Location:
libc/arch
Files:
9 edited

Legend:

Unmodified
Added
Removed
  • libc/arch/amd64/Makefile.inc

    r8f9239e ra3aa1e1  
    3434
    3535ARCH_SOURCES += arch/$(ARCH)/src/syscall.S
     36
     37LFLAGS += -N
  • libc/arch/amd64/_link.ld.in

    r8f9239e ra3aa1e1  
    33
    44PHDRS {
    5         image PT_LOAD AT (0x1000);
     5        text PT_LOAD FLAGS(5);
     6        data PT_LOAD FLAGS(6);
    67}
    78
    89SECTIONS {
    910        . = 0x1000;
    10         .image ALIGN(0x1000) : {
     11       
     12        .init ALIGN(0x1000) : SUBALIGN(0x1000) {
     13                *(.init);
     14        } :text
     15        .text : {
    1116                *(.text);
    12                 *(.data);               /* initialized data */
    13                 *(.rodata*);            /* string literals */
    14                 *(COMMON);              /* global variables */
    15                 *(.eh_frame);
    16                 *(.bss);                /* uninitialized static variables */
    17         } :image
    18 
     17                *(.rodata*);
     18        } :text
     19       
     20        .data ALIGN(0x1000) : SUBALIGN(0x1000) {
     21                *(.data);
     22        } :data
     23        .bss : {
     24                *(COMMON);
     25                *(.bss);
     26        } :data
    1927
    2028        /DISCARD/ : {
    21                 *(.note.GNU-stack);
    22                 *(.comment);
     29                *(*);
    2330        }
    2431
  • libc/arch/amd64/src/entry.s

    r8f9239e ra3aa1e1  
    2727#
    2828
    29 .text
     29.section .init, "ax"
    3030
    3131.org 0
  • libc/arch/ia32/Makefile.inc

    r8f9239e ra3aa1e1  
    3434
    3535ARCH_SOURCES += arch/$(ARCH)/src/syscall.c
     36
     37LFLAGS += -N
  • libc/arch/ia32/_link.ld.in

    r8f9239e ra3aa1e1  
    33
    44PHDRS {
    5         image PT_LOAD AT (0x1000);
     5        text PT_LOAD FLAGS(5);
     6        data PT_LOAD FLAGS(6);
    67}
    78
    89SECTIONS {
     10        . = 0x1000;
     11
     12        .init ALIGN(0x1000) : SUBALIGN(0x1000) {
     13                *(.init);
     14        } :text
     15        .text : {
     16                *(.text);
     17                *(.rodata*);
     18        } :text
    919       
    10         . = 0x1000;
    11         .image 0x00001000 : {
    12                 *(.text);
    13                 *(.data);                       /* initialized data */
    14                 *(.rodata*);                    /* string literals */
    15                 *(COMMON);                      /* global variables */
    16                 *(.bss);                        /* uninitialized static variables */
    17         } :image
     20        .data ALIGN(0x1000) : SUBALIGN(0x1000) {
     21                *(.data);
     22        } :data
     23        .bss : {
     24                *(COMMON);
     25                *(.bss);
     26        } :data
    1827       
    1928        /DISCARD/ : {
    20                 *(.note.GNU-stack);
    21                 *(.comment);
     29                *(*);
    2230        }
    2331
  • libc/arch/ia32/src/entry.s

    r8f9239e ra3aa1e1  
    2727#
    2828
    29 .text
     29.section .init, "ax"
    3030
    3131.org 0
  • libc/arch/ia64/_link.ld.in

    r8f9239e ra3aa1e1  
    1 OUTPUT_FORMAT(elf64-ia64-little)
    21STARTUP(../libc/arch/ARCH/src/entry.o)
    32ENTRY(__entry)
    43
     4PHDRS {
     5        text PT_LOAD FLAGS(5);
     6        data PT_LOAD FLAGS(6);
     7}
     8
    59SECTIONS {
    6         .text 0x00010000 : {
    7                 *(.text)
    8                 *(.rodata .rodata.*)
    9                 *(.opd)
    10                 *(.data)
    11                 *(.got .got.*)
    12                 *(.sdata)
    13                 *(.sbss)
    14                 *(.scommon)
    15                 *(.bss)
     10        . = 0x4000;
     11
     12        .init ALIGN(0x4000): SUBALIGN(0x4000) {
     13                *(.init);
     14        } : text
     15        .text : {
     16                *(.text);
     17                *(.rodata*);
     18        } :text
     19
     20        .got ALIGN(0x4000) : SUBALIGN(0x4000) {
     21                *(.got*);
     22        } :data
     23        .data : {
     24                _gp = .;
     25                *(.opd);
     26                *(.data);
     27                *(.sdata);
     28        } :data
     29        .bss : {
     30                *(.sbss);
     31                *(.scommon);
    1632                *(COMMON);
    17         }
     33                *(.bss);
     34        } :data
    1835 
    1936        /DISCARD/ : {
    20                 *(.note.GNU-stack);
    21                 *(.comment);
     37                *(*);
    2238        }
    2339}
  • libc/arch/ia64/src/entry.s

    r8f9239e ra3aa1e1  
    2727#
    2828
    29 .text
     29.section .init, "ax"
    3030
    3131.org 0
     
    3737#
    3838__entry:
    39         mov r1 = __entry
     39        mov r1 = _gp
    4040        { br.call.sptk.many b0 = main }
    4141        { br.call.sptk.many b0 = __exit }
  • libc/arch/mips32/_link.ld.in

    r8f9239e ra3aa1e1  
    22ENTRY(__entry)
    33
     4PHDRS {
     5        text PT_LOAD FLAGS(5);
     6        data PT_LOAD FLAGS(6);
     7}
     8
    49SECTIONS {
    510        . = 0x4000;
    6         .init : SUBALIGN(0x4000) {
     11       
     12        .init ALIGN(0x4000) : SUBALIGN(0x4000) {
    713                *(.init);
    8         }
     14        } :text
    915        .text : {
    1016                *(.text);
    1117                *(.rodata*);
    12         }
    13         .data ALIGN(0x4000) :  {
     18        } :text
     19       
     20        .data ALIGN(0x4000) : SUBALIGN(0x4000) {
    1421                *(.data);
    15         }
     22        } :data
    1623        .bss : {
    1724                *(.bss);
    1825                *(.sbss);
    1926                *(COMMON);
    20         }
     27        } :data
     28       
    2129        /DISCARD/ : {
    2230                *(*);
Note: See TracChangeset for help on using the changeset viewer.