From 431925a45249d4225f0f94416d12464bfaf08b31 Mon Sep 17 00:00:00 2001 From: oharboe Date: Fri, 24 Jul 2009 05:42:45 +0000 Subject: Andreas Fritiofson I noticed there are a few checks for (rt == 0xf) even though that case is handled with an early return at the top of the function. git-svn-id: svn://svn.berlios.de/openocd/trunk@2562 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- src/target/arm_disassembler.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) (limited to 'src/target') diff --git a/src/target/arm_disassembler.c b/src/target/arm_disassembler.c index 6c90bd7e..2af07c4e 100644 --- a/src/target/arm_disassembler.c +++ b/src/target/arm_disassembler.c @@ -3523,8 +3523,6 @@ static int t2ev_load_halfword(uint32_t opcode, uint32_t address, if ((opcode & (1 << 23)) == 0) { if (rn == 0xf) { ldrh_literal: - if (rt == 0xf) - return ERROR_INVALID_ARGUMENTS; immed = opcode & 0xfff; address = thumb_alignpc4(address); if (opcode & (1 << 23)) @@ -3535,8 +3533,6 @@ ldrh_literal: sign, rt, address); return ERROR_OK; } - if (rt == 0xf) - return ERROR_INVALID_ARGUMENTS; if (op2 == 0) { int rm = opcode & 0xf; @@ -3574,12 +3570,11 @@ ldrh_literal: } else { if (rn == 0xf) goto ldrh_literal; - if (rt != 0x0f) { - immed = opcode & 0xfff; - sprintf(cp, "LDR%sH.W\tr%d, [r%d, #%d]\t; %#6.6x", - sign, rt, rn, immed, immed); - return ERROR_OK; - } + + immed = opcode & 0xfff; + sprintf(cp, "LDR%sH.W\tr%d, [r%d, #%d]\t; %#6.6x", + sign, rt, rn, immed, immed); + return ERROR_OK; } return ERROR_INVALID_ARGUMENTS; -- cgit v1.2.3