On Thursday 23 July 2009, Andreas Fritiofson wrote:
> 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.
> 
> Maybe those checks should just go?

Yes, they should.  They're leftovers.


> /Andreas
> 
> Index: src/target/arm_disassembler.c
> ===================================================================
> --- src/target/arm_disassembler.c     (revision 2561)
> +++ src/target/arm_disassembler.c     (working copy)
> @@ -3523,8 +3523,6 @@
>       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 @@
>                                       sign, rt, address);
>                       return ERROR_OK;
>               }
> -             if (rt == 0xf)
> -                     return ERROR_INVALID_ARGUMENTS;
>               if (op2 == 0) {
>                       int rm = opcode & 0xf;
> 
> @@ -3574,12 +3570,11 @@
>       } 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;
> 
> 


_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to