linux/arch/microblaze
Michal Simek 3274c5707c microblaze: Optimize CACHE_LOOP_LIMITS and CACHE_RANGE_LOOP macros
1. Remove CACHE_ALL_LOOP2 macro because it is identical to CACHE_ALL_LOOP
2. Change BUG_ON to WARN_ON
3. Remove end aligned from CACHE_LOOP_LIMITS.
C implementation do not need aligned end address and ASM code do aligned
in their macros
4. ASM optimized  CACHE_RANGE_LOOP_1/2 macros needs to get aligned end address.
Because end address is compound from start + size, end address is the first address
which is exclude.

Here is the corresponding code which describe it.
+       int align = ~(line_length - 1);
+       end = ((end & align) == end) ? end - line_length : end & align;

a) end is aligned:
it is necessary to subtruct line length because we don't want to work with
next cacheline
b) end address is not aligned:
Just align it to be ready for ASM code.

Signed-off-by: Michal Simek <monstr@monstr.eu>
2010-05-06 11:22:00 +02:00
..
boot microblaze: Makefile cleanups 2010-04-01 08:38:19 +02:00
configs microblaze: Defconfig update 2010-02-03 10:18:20 +01:00
include/asm microblaze: Define correct L1_CACHE_SHIFT value 2010-05-06 11:21:59 +02:00
kernel microblaze: Optimize CACHE_LOOP_LIMITS and CACHE_RANGE_LOOP macros 2010-05-06 11:22:00 +02:00
lib microblaze: Support word copying in copy_tofrom_user 2010-04-01 08:38:25 +02:00
mm microblaze: Fix consistent-sync code 2010-05-06 11:22:00 +02:00
oprofile microblaze: Core oprofile configs and hooks 2009-12-14 08:45:07 +01:00
pci microblaze: resource/PCI: align functions now return start of resource 2010-05-06 11:21:57 +02:00
platform microblaze: Use lowest-common-denominator default CPU settings 2009-12-14 08:45:02 +01:00
Kconfig microblaze: Kconfig Fix - pci 2010-04-01 08:38:24 +02:00
Kconfig.debug microblaze: Add TRACE_IRQFLAGS_SUPPORT 2009-12-14 08:40:09 +01:00
Makefile microblaze: Fix Makefile to delete build generated files 2010-04-01 08:38:19 +02:00