]> rtime.felk.cvut.cz Git - sysless.git/blobdiff - board/h8300/hi_cpu2/libs/hi_cpu2.ld-boot
Merge with git://ulan.git.sourceforge.net/gitroot/ulan/sysless
[sysless.git] / board / h8300 / hi_cpu2 / libs / hi_cpu2.ld-boot
index 28fe36e1269efd8334ea8ba4d0cb6e08007e8f21..656caabf51c4186aa337863eb60ecf90cc84ca33 100644 (file)
@@ -24,22 +24,32 @@ SECTIONS
          . = ALIGN( 0x4 ) ;
        } > iram0
 
+       .text.boot_fn ALIGN(4) :
+       {
+         . = ALIGN( 0x4 ) ;
+          KEEP (boot_fn.o(.text))
+         KEEP (boot_fn.o(.rodata))
+         KEEP (boot_fn.o(.strings))
+         . = ALIGN( 4 ) ;
+       } > iram0 AT>flashbb
+       ___boot_fn_start = ADDR(.text.boot_fn);
+       ___boot_fn_end   = ADDR(.text.boot_fn) + SIZEOF(.text.boot_fn);
+       ___boot_fn_load  = LOADADDR(.text.boot_fn);
+
         .text :
        {
          text_start = . ;
          KEEP (crt0.o(.text))
-         . = ALIGN( 4 ) ;
-         ___boot_fn_start = ALIGN( 0x4 ) ;
-          KEEP (*boot_fn.o(.text))
-         KEEP (*boot_fn.o(.rodata))
-         . = ALIGN( 4 ) ;
-         ___boot_fn_end = ALIGN( 0x4 ) ;
-          *(.text .stub .text.* .gnu.linkonce.t.*)
+         *(.text)
+         *(.rodata)
+         *(.text .stub .text.* .gnu.linkonce.t.*)
          *(.rodata .rodata.* .gnu.linkonce.r.*)
+         *(.strings)
+         . = ALIGN( 0x4 ) ;
          _etext = ALIGN( 0x4 ) ;
         } > flashbb
 
-       .tors : 
+       .tors :
        {
          ___ctors = . ;
          *(.ctors)
@@ -54,7 +64,8 @@ SECTIONS
         .data :
          AT ( ADDR( .tors ) + SIZEOF( .tors ) )
        {
-         _data_start = . ;
+         . = ALIGN( 0x4 ) ;
+         _data_start = ALIGN( 0x4 ) ;
           *(.data)
          . = ALIGN( 0x4 ) ;
          _edata = ALIGN( 0x4 ) ;
@@ -64,7 +75,8 @@ SECTIONS
        
         .bss :
         {
-         _bss_start = ALIGN( 0x10 ) ;
+         . = ALIGN( 0x4 ) ;
+         _bss_start = ALIGN( 0x4 ) ;
          *(.bss)
          *(COMMON)
          . = ALIGN( 0x4 ) ;