1. 25 Sep, 2006 38 commits
  2. 20 Sep, 2006 2 commits
    • Greg Ungerer's avatar
      [ARM] nommu: create flat.h to support uClinux flat binaries · acc46c01
      Greg Ungerer authored
      Create header with uClinux flat format binary support macros for ARM
      platforms. Derived from the m68knommu flat.h.
      Signed-off-by: default avatarGreg Ungerer <gerg@uclinux.org>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      acc46c01
    • Daniel Jacobowitz's avatar
      [ARM] 3759/2: Remove uses of %? · 6a39dd62
      Daniel Jacobowitz authored
      Patch from Daniel Jacobowitz
      
      The ARM kernel has several uses of asm("foo%?").  %? is a GCC internal
      modifier used to output conditional execution predicates.  However, no
      version of GCC supports conditionalizing asm statements.  GCC 4.2 will
      correctly expand %? to the empty string in user asms.  Earlier versions may
      reuse the condition from the previous instruction.  In 'if (foo) asm
      ("bar%?");' this is somewhat likely to be right... but not reliable.
      
      So, the only safe thing to do is to remove the uses of %?.  I believe
      the tlbflush.h occurances were supposed to be removed before, based
      on the comment about %? not working at the top of that file.
      
      Old versions of GCC could omit branches around user asms if the asm didn't
      mark the condition codes as clobbered.  This problem hasn't been seen on any
      recent (3.x or 4.x) GCC, but it could theoretically happen.  So, where
      %? was removed a cc clobber was added.
      Signed-off-by: default avatarDaniel Jacobowitz <dan@codesourcery.com>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      6a39dd62