From b88fb83b138d4a377abea9461b2d58b9bf8ad9fe Mon Sep 17 00:00:00 2001 From: Uwe Kleine-König Date: Thu, 13 Aug 2009 20:38:16 +0200 Subject: netx: Use get_irqnr_preamble to initialize base register MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This patch optimizes the irq handling a bit. Now the base register is only computed once per irq exception instead of at least twice. Moreover the mov+add sequence is simplified to an ldr (which might save some cycles depending on memory timing). Signed-off-by: Uwe Kleine-König --- arch/arm/mach-netx/include/mach/entry-macro.S | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'arch/arm/mach-netx') diff --git a/arch/arm/mach-netx/include/mach/entry-macro.S b/arch/arm/mach-netx/include/mach/entry-macro.S index a1952a0feda6..844f1f9acbdf 100644 --- a/arch/arm/mach-netx/include/mach/entry-macro.S +++ b/arch/arm/mach-netx/include/mach/entry-macro.S @@ -24,15 +24,13 @@ .endm .macro get_irqnr_preamble, base, tmp + ldr \base, =io_p2v(0x001ff000) .endm .macro arch_ret_to_user, tmp1, tmp2 .endm .macro get_irqnr_and_base, irqnr, irqstat, base, tmp - mov \base, #io_p2v(0x00100000) - add \base, \base, #0x000ff000 - ldr \irqstat, [\base, #0] clz \irqnr, \irqstat rsb \irqnr, \irqnr, #31 -- cgit v1.2.3