Rabin Vincent f8b435bb91 ARM: 7440/1: kprobes: only test 'sub pc, pc, #1b-2b+8-2' on ARMv6
'sub pc, pc, #1b-2b+8-2' results in address<1:0> == '10'.

sub pc, pc, #const (== ADR pc, #const) performs an interworking branch
(BXWritePC()) on ARMv7+ and a simple branch (BranchWritePC()) on earlier
versions.

In ARM state, BXWritePC() is UNPREDICTABLE when address<1:0> == '10'.

In ARM state on ARMv6+, BranchWritePC() ignores address<1:0>.  Before
ARMv6, BranchWritePC() is UNPREDICTABLE if address<1:0> != '00'

So the instruction is UNPREDICTABLE both before and after v6.

Acked-by: Jon Medhurst <tixy@yxit.co.uk>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2012-07-05 12:57:16 +01:00
..
2008-08-12 19:54:09 +01:00
2012-03-28 18:30:01 +01:00
2008-05-30 10:33:49 +02:00
2012-03-29 18:02:10 -07:00
2012-03-28 18:30:01 +01:00
2012-03-24 09:38:56 +00:00
2010-10-29 13:14:40 -05:00
2012-05-08 12:35:06 +02:00
2012-03-28 18:30:01 +01:00
2012-05-31 17:49:29 -07:00
2012-03-28 18:30:01 +01:00