Makefile: Overhaul

Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
Disable Tracer

Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
Update Piggy

Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
Update arch/arm/Makefile

Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
Use -O3 for now

Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
Disable Tracer Part 2

Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
Netfilter: Fix Build Error

Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
Disable More Tracer

Signed-off-by: Chet Kener <Cl3Kener@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
Makefile: tweaks

- Removed hardcoded toolchain.
- -o3 & Cortex-A15 optimizations.

Signed-off-by: LaboDJ <jacopolabardi@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>

Conflicts:

	Makefile

Signed-off-by: engstk <eng.stk@sapo.pt>
vfp: Cortex-A15 optimizations

Signed-off-by: LaboDJ <jacopolabardi@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
arm: Cortex-A15 optimizations

Signed-off-by: LaboDJ <jacopolabardi@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>

Conflicts:

	arch/arm/Makefile

Signed-off-by: engstk <eng.stk@sapo.pt>
makefile: tune flags

Signed-off-by: engstk <eng.stk@sapo.pt>
Compressed: optimize for Cortex A15

Signed-off-by: LaboDJ <jacopolabardi@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
IO: removed usless test & debug things

Signed-off-by: engstk <eng.stk@sapo.pt>
shut up unwind

Signed-off-by: engstk <eng.stk@sapo.pt>
build: Fix some warnings with GCC 4.9

Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
lib/memcopy: use glibc version

the kernel's memcpy and memmove is very inefficient. But the glibc version is
quite fast, in some cases it is 10 times faster than the kernel version. So I
introduce some memory copy macros and functions of the glibc to improve the
kernel version's performance.

The strategy of the memory functions is:
1. Copy bytes until the destination pointer is aligned.
2. Copy words in unrolled loops.  If the source and destination are not
   aligned in the same way, use word memory operations, but shift and merge
   two read words before writing.
3. Copy the few remaining bytes.

Signed-off-by: Miao Xie <miaox*******>
Signed-off-by: faux123 <reioux@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
lib/string: use glibc version

the performance of memcpy and memmove of the general version is very
inefficient, this patch improved them.

Signed-off-by: Miao Xie <miaox*******>
Signed-off-by: faux123 <reioux@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
arm/crypto: Add optimized AES and SHA1 routines

Add assembler versions of AES and SHA1 for ARM platforms.  This has provided
up to a 50% improvement in IPsec/TCP throughout for tunnels using AES128/SHA1.

Platform   CPU SPeed    Endian   Before (bps)   After (bps)   Improvement

IXP425      533 MHz      big     11217042        15566294        ~38%
KS8695      166 MHz     little    3828549         5795373        ~51%

Signed-off-by: David McCullough <ucdevel@gmail.com>
Signed-off-by: faux123 <reioux@gmail.com>
Signed-off-by: engstk <eng.stk@sapo.pt>
Optimized ARM RWSEM algorithm

RWSEM implementation for ARM using atomic functions.
Heavily based on arch/sh/include/asm/rwsem.h

Signed-off-by: Ashwin Chaugule <ashwinc@codeaurora.org>
Signed-off-by: engstk <eng.stk@sapo.pt>