aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/nwfpe/entry.S
diff options
context:
space:
mode:
authorLeif Lindholm <leif.lindholm@arm.com>2011-12-12 19:44:49 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-12-13 08:52:02 +0000
commite7f626db83689f55089717a6d771c57afe1adc1a (patch)
tree29d15e9f913ffefdf16bc88c8f220e7ba9cc7548 /arch/arm/nwfpe/entry.S
parentARM: 7206/1: Add generic ARM instruction set condition code checks. (diff)
downloadlinux-dev-e7f626db83689f55089717a6d771c57afe1adc1a.tar.xz
linux-dev-e7f626db83689f55089717a6d771c57afe1adc1a.zip
ARM: 7207/1: Use generic ARM instruction set condition code checks for nwfpe.
This patch changes the nwfpe implementation to use the new generic ARM instruction set condition code checks, rather than a local implementation. It also removes the existing condition code checking, which has been used for the generic support (in kernel/opcodes.{ch}). This code has not been tested beyond building, linking and booting. Signed-off-by: Leif Lindholm <leif.lindholm@arm.com> Reviewed-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/nwfpe/entry.S')
-rw-r--r--arch/arm/nwfpe/entry.S8
1 files changed, 5 insertions, 3 deletions
diff --git a/arch/arm/nwfpe/entry.S b/arch/arm/nwfpe/entry.S
index cafa18354339..d18dde95b8aa 100644
--- a/arch/arm/nwfpe/entry.S
+++ b/arch/arm/nwfpe/entry.S
@@ -20,6 +20,8 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
+#include <asm/opcodes.h>
+
/* This is the kernel's entry point into the floating point emulator.
It is called from the kernel with code similar to this:
@@ -81,11 +83,11 @@ nwfpe_enter:
mov r6, r0 @ save the opcode
emulate:
ldr r1, [sp, #S_PSR] @ fetch the PSR
- bl checkCondition @ check the condition
- cmp r0, #0 @ r0 = 0 ==> condition failed
+ bl arm_check_condition @ check the condition
+ cmp r0, #ARM_OPCODE_CONDTEST_PASS @ condition passed?
@ if condition code failed to match, next insn
- beq next @ get the next instruction;
+ bne next @ get the next instruction;
mov r0, r6 @ prepare for EmulateAll()
bl EmulateAll @ emulate the instruction