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-04-27 13:39:25 +01:00
2012-03-28 18:30:01 +01:00
2008-05-17 22:55:16 +01:00
2011-10-17 09:11:51 +01:00
2008-05-30 10:33:49 +02:00
2008-02-04 13:21:03 +00:00
2012-05-16 15:24:12 +01:00
2011-11-17 16:58:00 +00:00
2010-07-07 16:38:36 +02:00
2010-07-07 16:38:36 +02:00
2012-03-21 01:59:40 -04:00
2011-03-23 19:47:19 -07:00
2012-03-29 18:02:10 -07:00
2011-10-31 19:30:49 -04:00
2009-12-24 18:34:08 +00:00
2011-09-13 11:12:14 +02:00
2009-12-09 10:02:18 +00:00
2012-03-28 18:30:01 +01:00
2012-06-16 16:30:25 +01:00
2012-05-29 22:13:55 +01:00
2011-07-22 23:09:07 +01:00
2011-10-31 19:30:50 -04:00
2012-03-28 18:30:01 +01:00
2011-05-26 10:31:06 +01:00
2012-03-24 09:38:55 +00:00
2011-05-11 15:12:32 +02:00
2012-03-28 18:30:01 +01:00
2012-05-04 16:56:46 +01:00
2012-03-28 18:30:01 +01:00
2012-03-30 11:51:46 +01:00
2012-03-24 09:38:56 +00:00
2011-10-31 19:30:49 -04:00
2012-04-28 11:01:31 +01:00
2009-11-18 08:37:40 -08:00
2011-08-11 10:10:26 +08:00
2012-03-24 09:38:56 +00:00
2010-10-29 13:14:40 -05:00
2011-11-30 23:54:54 +00:00
2012-03-28 18:30:01 +01:00
2012-07-05 12:57:16 +01:00
2011-11-26 21:58:53 +00:00
2011-12-13 08:52:03 +00:00
2011-11-26 21:58:53 +00:00
2012-06-14 15:11:44 +01:00
2012-04-02 08:53:24 -07:00
2011-09-20 18:17:43 +00:00
2011-12-21 15:52:57 -08:00
2012-03-29 16:53:48 -07:00
2012-05-21 19:43:57 -07:00
2011-08-23 15:30:33 +01:00
2011-12-13 08:52:02 +00:00
2012-03-24 09:38:55 +00:00
2012-03-24 09:38:55 +00:00
2012-05-09 15:23:12 +02:00
2012-05-09 15:23:12 +02:00
2012-05-09 15:23:12 +02:00
2012-07-05 09:50:56 +01:00
2011-10-31 19:30:48 -04:00
2011-11-16 10:06:42 +00:00
2012-05-08 12:35:06 +02:00
2012-07-05 09:50:56 +01:00
2011-08-28 10:39:41 +01:00
2011-10-31 19:30:49 -04:00
2012-03-24 09:38:53 +00:00
2012-05-26 13:14:01 -07:00
2012-07-05 09:50:56 +01:00
2012-07-05 09:50:56 +01:00
2012-03-28 18:30:01 +01:00
2012-04-28 17:31:37 +01:00
2012-03-28 17:14:35 -07:00
2012-04-19 19:35:10 +01:00
2012-05-31 17:49:29 -07:00
2011-10-31 19:30:49 -04:00
2011-12-06 14:04:14 +00:00
2011-12-13 08:52:03 +00:00
2012-05-05 13:54:01 +01:00
2012-05-15 14:08:35 -07:00
2012-03-28 18:30:01 +01:00
2009-09-15 22:11:05 +01:00
2012-04-25 19:49:26 +01:00
2012-05-06 11:09:21 +01:00
2011-11-30 23:55:21 +00:00
2012-07-05 09:50:56 +01:00
2011-12-15 14:02:19 -08:00
2012-06-22 22:54:18 +01:00
2011-10-31 19:30:48 -04:00