entry-common.S (012e060c95e547eceea4a12c6f58592473bf4011) entry-common.S (60ac133aac9e07b94f2cb6bf571bf8aef69248c3)
1/*
2 * linux/arch/arm/kernel/entry-common.S
3 *
4 * Copyright (C) 2000 Russell King
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.

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

101#ifdef CONFIG_CPU_ARM710
102 .macro arm710_bug_check, instr, temp
103 and \temp, \instr, #0x0f000000 @ check for SWI
104 teq \temp, #0x0f000000
105 bne .Larm700bug
106 .endm
107
108.Larm700bug:
1/*
2 * linux/arch/arm/kernel/entry-common.S
3 *
4 * Copyright (C) 2000 Russell King
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.

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

101#ifdef CONFIG_CPU_ARM710
102 .macro arm710_bug_check, instr, temp
103 and \temp, \instr, #0x0f000000 @ check for SWI
104 teq \temp, #0x0f000000
105 bne .Larm700bug
106 .endm
107
108.Larm700bug:
109 ldr r0, [sp, #S_PSR] @ Get calling cpsr
110 sub lr, lr, #4
111 str lr, [r8]
112 msr spsr_cxsf, r0
113 ldmia sp, {r0 - lr}^ @ Get calling r0 - lr
114 mov r0, r0
109 ldmia sp, {r0 - lr}^ @ Get calling r0 - lr
110 mov r0, r0
115 ldr lr, [sp, #S_PC] @ Get PC
116 add sp, sp, #S_FRAME_SIZE
111 add sp, sp, #S_FRAME_SIZE
117 movs pc, lr
112 subs pc, lr, #4
118#else
119 .macro arm710_bug_check, instr, temp
120 .endm
121#endif
122
123 .align 5
124ENTRY(vector_swi)
125 sub sp, sp, #S_FRAME_SIZE

--- 170 unchanged lines hidden ---
113#else
114 .macro arm710_bug_check, instr, temp
115 .endm
116#endif
117
118 .align 5
119ENTRY(vector_swi)
120 sub sp, sp, #S_FRAME_SIZE

--- 170 unchanged lines hidden ---