From 4e3c2676f15a130d0594b7c5164ae09f8bd41648 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=98yvind=20Harboe?= Date: Mon, 26 Oct 2009 18:53:19 +0100 Subject: [PATCH] target: check args to mrc/mcr. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Øyvind Harboe --- src/target/target.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/target/target.c b/src/target/target.c index d4662f711..9b07df18b 100644 --- a/src/target/target.c +++ b/src/target/target.c @@ -722,6 +722,30 @@ static int arm_cp_check(struct target_s *target, int cpnum, uint32_t op1, uint32 return ERROR_FAIL; } + if (op1>7) + { + LOG_ERROR("Illegal op1"); + return ERROR_FAIL; + } + + if (op2>7) + { + LOG_ERROR("Illegal op2"); + return ERROR_FAIL; + } + + if (CRn>15) + { + LOG_ERROR("Illegal CRn"); + return ERROR_FAIL; + } + + if (CRm>7) + { + LOG_ERROR("Illegal CRm"); + return ERROR_FAIL; + } + return ERROR_OK; }