u-boot/arch/powerpc/lib
Kyle Moffett 01baa05643 powerpc: Minimal private libgcc to build on Debian
Standard Debian powerpc and powerpcspe systems only include hard-float
libgcc in their native compilers, which causes scary build warnings when
building U-Boot.

Debian and other PowerPC-supporting distributions used to provide libgcc
and other libraries in a "nof" (soft-float) form in the "multilib"
packages.  As they were completely unused by the distribution and
therefore tended to be very buggy it was decided to save some time on
the part of the maintainers and build-servers by removing them.

Admittedly, right now the linker warnings do not indicate any problems,
as the included routines do not use any floating point at all.

The concern is that if floating-point code were ever added it might
cause hard-float code to be unexpectedly included in U-Boot without
generating a hard error.  This would cause unexplained crashes or
indeterminate results at runtime.

The easiest way to resolve this is to borrow the routines that U-Boot
needs from the Linux kernel, which has the same issue.

Specifically, the routines are: _ashldi3(), _ashrdi3(), and _lshrdi3().
They were borrowed from arch/powerpc/kernel/misc_32.S as of v2.6.38-rc5,
commit 85e2efbb1db9a18d218006706d6e4fbeb0216213, and are GPLv2+.

The Makefile framework was copied from the U-Boot ARM port.

Signed-off-by: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: Wolfgang Denk <wd@denx.de>
Cc: Kim Phillips <kim.phillips@freescale.com>
Cc: Andy Fleming <afleming@gmail.com>
Cc: Kumar Gala <kumar.gala@freescale.com>
Cc: Stefan Roese <sr@denx.de>
2011-12-07 23:04:32 +01:00
..
_ashldi3.S powerpc: Minimal private libgcc to build on Debian 2011-12-07 23:04:32 +01:00
_ashrdi3.S powerpc: Minimal private libgcc to build on Debian 2011-12-07 23:04:32 +01:00
_lshrdi3.S powerpc: Minimal private libgcc to build on Debian 2011-12-07 23:04:32 +01:00
bat_rw.c arch/powerpc/lib/bat_rw.c: Fix GCC 4.6 build warning 2011-11-07 22:16:55 +01:00
board.c arch/powerpc/lib/board.c: fix build warning 2011-11-07 22:09:35 +01:00
bootcount.c mpc832x: add support for the mpc8321 based suvd3 board 2011-04-30 00:44:29 +02:00
bootm.c Flush cache after the OS image is loaded into the memory. 2011-09-05 16:07:44 +02:00
cache.c Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
extable.c Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
interrupts.c Timer: Remove reset_timer() for non-Nios2 arches 2011-07-26 14:53:30 +02:00
kgdb.c powerpc: fix register usage in some inline assembly code 2010-12-17 21:18:08 +01:00
Makefile powerpc: Minimal private libgcc to build on Debian 2011-12-07 23:04:32 +01:00
memcpy_mpc5200.c MPC512x: workaround data corruption for unaligned local bus accesses 2010-06-29 14:41:37 +02:00
ppccache.S Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
ppcstring.S Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
reloc.S Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
ticks.S Move arch/ppc to arch/powerpc 2010-04-21 23:42:38 +02:00
time.c powerpc: fix register usage in some inline assembly code 2010-12-17 21:18:08 +01:00