1. 02 5月, 2010 1 次提交
    • C
      xtensa: Fix linker script patch-up · ed5010ea
      Chris Zankel 提交于
      The Xtensa architecture requires to patch the generated linker script
      to insert precede certain sections with a .literal section. Ammend the
      sed script to fix-up only sequences that start with a '*':
      '*(.init.text)' -> '*(.init.literal .init.text)'
      Signed-off-by: NChris Zankel <chris@zankel.net>
      ed5010ea
  2. 20 9月, 2009 1 次提交
    • S
      arm, cris, mips, sparc, powerpc, um, xtensa: fix build with bash 4.0 · 51b563fc
      Sam Ravnborg 提交于
      Albin Tonnerre <albin.tonnerre@free-electrons.com> reported:
      
          Bash 4 filters out variables which contain a dot in them.
          This happends to be the case of CPPFLAGS_vmlinux.lds.
          This is rather unfortunate, as it now causes
          build failures when using SHELL=/bin/bash to compile,
          or when bash happens to be used by make (eg when it's /bin/sh)
      
      Remove the common definition of CPPFLAGS_vmlinux.lds by
      pushing relevant stuff to either Makefile.build or the
      arch specific kernel/Makefile where we build the linker script.
      
      This is also nice cleanup as we move the information out where
      it is used.
      
      Notes for the different architectures touched:
      
      arm - we use an already exported symbol
      cris - we use a config symbol aleady available
             [Not build tested]
      mips - the jiffies complexity has moved to vmlinux.lds.S where we need it.
             Added a few variables to CPPFLAGS - they are only used by
             the linker script.
             [Not build tested]
      powerpc - removed assignment that is not needed
                [not build tested]
      sparc - simplified it using $(BITS)
      um - introduced a few new exported variables to deal with this
      xtensa - added options to CPP invocation
               [not build tested]
      
      Cc: Albin Tonnerre <albin.tonnerre@free-electrons.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: Jesper Nilsson <jesper.nilsson@axis.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jeff Dike <jdike@addtoit.com>
      Cc: Chris Zankel <chris@zankel.net>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      51b563fc
  3. 12 5月, 2009 1 次提交
    • C
      xtensa: Fix linker script to include .literal sections · 78f3cdfa
      Chris Zankel 提交于
      Fix resembles implementation from Marc Gauthier and Piet Denaly:
      
      In the Xtensa architecture, assembly generates literals which must always
      precede the code (the L32R instruction that loads them only uses negative
      PC-relative offsets).  For any *.text section, literals are placed in a
      corresponding *.literal section.  The linker script (vmlinux.lds) must
      place these in the correct order.  It must also combine them, when the
      *.text section can be larger than L32R's 256 kB range.
      
      For example, this doesn't work:  *(.literal) *(.text) because L32R
      instructions at the end of .text can't reach the literals.
      
      The linker can solve this if they are combined in parentheses, like this:
             *(.literal .text)
      because it is now allowed mix literals in .text to bring them in range.
      
      None of this is done by standard vmlinux.lds.h macros such as TEXT_TEXT
      and INIT_TEXT.  To avoid replicating the logic of that header file, we
      instead post-process the generated linker script to convert *(xxx.text)
      to *(xxx.literal xxx.text) for the following text sections:
             .text .ref.text .*init.text .*exit.text .text.*
      using a sed script.  To do this we must override the default rule for
      vmlinux.lds (see scripts/Makefile.build and the top-level Makefile)
      to insert this extra step.
      Signed-off-by: NMarc Gauthier <marc@tensilica.com>
      Signed-off-by: NPete Delaney <piet@tensilica.com>
      Signed-off-by: NChris Zankel <chris@zankel.net>
      78f3cdfa
  4. 17 4月, 2008 1 次提交
  5. 28 8月, 2007 2 次提交
  6. 14 12月, 2006 1 次提交
  7. 24 6月, 2005 1 次提交