entry-armv.S (706fdd9faaad5bd52c774190a54c0fd1dfc0f418) entry-armv.S (791be9b976ba621b21745c30a7fca225fada9110)
1/*
2 * linux/arch/arm/kernel/entry-armv.S
3 *
4 * Copyright (C) 1996,1997,1998 Russell King.
5 * ARM700 fix by Matthew Godbolt (linux-user@willothewisp.demon.co.uk)
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as

--- 20 unchanged lines hidden (view full) ---

29 .macro irq_handler
301: get_irqnr_and_base r0, r6, r5, lr
31 movne r1, sp
32 @
33 @ routine called with r0 = irq number, r1 = struct pt_regs *
34 @
35 adrne lr, 1b
36 bne asm_do_IRQ
1/*
2 * linux/arch/arm/kernel/entry-armv.S
3 *
4 * Copyright (C) 1996,1997,1998 Russell King.
5 * ARM700 fix by Matthew Godbolt (linux-user@willothewisp.demon.co.uk)
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as

--- 20 unchanged lines hidden (view full) ---

29 .macro irq_handler
301: get_irqnr_and_base r0, r6, r5, lr
31 movne r1, sp
32 @
33 @ routine called with r0 = irq number, r1 = struct pt_regs *
34 @
35 adrne lr, 1b
36 bne asm_do_IRQ
37
38#ifdef CONFIG_SMP
39 /*
40 * XXX
41 *
42 * this macro assumes that irqstat (r6) and base (r5) are
43 * preserved from get_irqnr_and_base above
44 */
45 test_for_ipi r0, r6, r5, lr
46 movne r0, sp
47 adrne lr, 1b
48 bne do_IPI
49#endif
50
37 .endm
38
39/*
40 * Invalid mode handlers
41 */
42 .macro inv_entry, sym, reason
43 sub sp, sp, #S_FRAME_SIZE @ Allocate frame size in one go
44 stmia sp, {r0 - lr} @ Save XXX r0 - lr

--- 895 unchanged lines hidden ---
51 .endm
52
53/*
54 * Invalid mode handlers
55 */
56 .macro inv_entry, sym, reason
57 sub sp, sp, #S_FRAME_SIZE @ Allocate frame size in one go
58 stmia sp, {r0 - lr} @ Save XXX r0 - lr

--- 895 unchanged lines hidden ---