Skip to content
Snippets Groups Projects
  1. Mar 20, 2009
    • Trent Piepho's avatar
      Fix all linker script to handle all rodata sections · f62fb999
      Trent Piepho authored
      
      A recent gcc added a new unaligned rodata section called '.rodata.str1.1',
      which needs to be added the the linker script.  Instead of just adding this
      one section, we use a wildcard ".rodata*" to get all rodata linker section
      gcc has now and might add in the future.
      
      However, '*(.rodata*)' by itself will result in sub-optimal section
      ordering.  The sections will be sorted by object file, which causes extra
      padding between the unaligned rodata.str.1.1 of one object file and the
      aligned rodata of the next object file.  This is easy to fix by using the
      SORT_BY_ALIGNMENT command.
      
      This patch has not be tested one most of the boards modified.  Some boards
      have a linker script that looks something like this:
      
      *(.text)
      . = ALIGN(16);
      *(.rodata)
      *(.rodata.str1.4)
      *(.eh_frame)
      
      I change this to:
      
      *(.text)
      . = ALIGN(16);
      *(.eh_frame)
      *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*)))
      
      This means the start of rodata will no longer be 16 bytes aligned.
      However, the boundary between text and rodata/eh_frame is still aligned to
      16 bytes, which is what I think the real purpose of the ALIGN call is.
      
      Signed-off-by: default avatarTrent Piepho <xyzzy@speakeasy.org>
      f62fb999
  2. Mar 18, 2009
  3. Feb 23, 2009
  4. Jan 24, 2009
  5. Dec 09, 2008
  6. Nov 18, 2008
  7. Oct 18, 2008
  8. Oct 14, 2008
  9. Sep 09, 2008
  10. Aug 31, 2008
  11. Jul 10, 2008
  12. May 20, 2008
    • Wolfgang Denk's avatar
      Big white-space cleanup. · 53677ef1
      Wolfgang Denk authored
      
      This commit gets rid of a huge amount of silly white-space issues.
      Especially, all sequences of SPACEs followed by TAB characters get
      removed (unless they appear in print statements).
      
      Also remove all embedded "vim:" and "vi:" statements which hide
      indentation problems.
      
      Signed-off-by: default avatarWolfgang Denk <wd@denx.de>
      53677ef1
  13. May 18, 2008
  14. Apr 08, 2008
  15. Mar 04, 2008
  16. Mar 02, 2008
    • Woodruff, Richard's avatar
      Fix alignment error on ARM for modules · 118978c8
      Woodruff, Richard authored
      Fix alignment fault on ARM when running modules.  With out an explicit
      linker file gcc4.2.1 will half word align __bss_start's value.  The word
      dereference will crash hello_world.
      
      signed-off-by Richard Woodruff <r-woodruff2@ti.com>
      118978c8
  17. Feb 17, 2008
  18. Feb 14, 2008
    • Wolfgang Denk's avatar
      PPC: Use r2 instead of r29 as global data pointer · e7670f6c
      Wolfgang Denk authored
      
      R29 was an unlucky choice as with recent toolchains (gcc-4.2.x) gcc
      will refuse to use load/store multiple insns; instead, it issues a
      list of simple load/store instructions upon function entry and exit,
      resulting in bigger code size, which in turn makes the build for a
      few boards fail.
      
      Use r2 instead.
      
      Signed-off-by: default avatarWolfgang Denk <wd@denx.de>
      e7670f6c
  19. Feb 07, 2008
  20. Feb 05, 2008
  21. Jan 12, 2008
    • Wolfgang Denk's avatar
      Fix linker scripts: add NOLOAD atribute to .bss/.sbss sections · 64134f01
      Wolfgang Denk authored
      
      With recent toolchain versions, some boards would not build because
      or errors like this one (here for ocotea board when building with
      ELDK 4.2 beta):
      ppc_4xx-ld: section .bootpg [fffff000 -> fffff23b] overlaps section .bss [fffee900 -> fffff8ab]
      
      For many boards, the .bss section is big enough that it wraps around
      at the end of the address space (0xFFFFFFFF), so the problem will not
      be visible unless you use a 64 bit tool chain for development. On
      some boards however, changes to the code size (due to different
      optimizations) we bail out with section overlaps like above.
      
      The fix is to add the NOLOAD attribute to the .bss and .sbss
      sections, telling the linker that .bss does not consume any space in
      the image.
      
      Signed-off-by: default avatarWolfgang Denk <wd@denx.de>
      64134f01
  22. Dec 27, 2007
  23. Nov 25, 2007
  24. Nov 15, 2007
  25. Oct 21, 2007
  26. May 13, 2007
  27. Mar 18, 2007
  28. Mar 09, 2007
  29. Oct 24, 2006
  30. Oct 08, 2006
  31. Sep 01, 2006
    • Marian Balakowicz's avatar
      Add support for a saving build objects in a separate directory. · f9328639
      Marian Balakowicz authored
      Modifications are based on the linux kernel approach and
      support two use cases:
      
        1) Add O= to the make command line
        'make O=/tmp/build all'
      
        2) Set environement variable BUILD_DIR to point to the desired location
        'export BUILD_DIR=/tmp/build'
        'make'
      
      The second approach can also be used with a MAKEALL script
      'export BUILD_DIR=/tmp/build'
      './MAKEALL'
      
      Command line 'O=' setting overrides BUILD_DIR environent variable.
      
      When none of the above methods is used the local build is performed and
      the object files are placed in the source directory.
      f9328639
    • Detlev Zundel's avatar
  32. Jun 08, 2006
Loading