Reported by Antti Hatala <ahatala@nvidia.com>.
authorDaniel Jacobowitz <drow@false.org>
Wed, 28 Oct 2009 20:17:36 +0000 (20:17 +0000)
committerDaniel Jacobowitz <drow@false.org>
Wed, 28 Oct 2009 20:17:36 +0000 (20:17 +0000)
* arm-tdep.c (thumb_get_next_pc): Limit check to IT instructions
correctly.

gdb/ChangeLog
gdb/arm-tdep.c

index a58386d..fe28f95 100644 (file)
@@ -1,3 +1,10 @@
+2009-10-28  Daniel Jacobowitz  <dan@codesourcery.com>
+
+       Reported by Antti Hatala <ahatala@nvidia.com>.
+
+       * arm-tdep.c (thumb_get_next_pc): Limit check to IT instructions
+       correctly.
+
 2009-10-28  Pedro Alves  <pedro@codesourcery.com>
 
         * dwarf2-frame.c (dwarf2_build_frame_info): Discard --gc-section
index 063e8f5..b71d05f 100644 (file)
@@ -2284,7 +2284,7 @@ thumb_get_next_pc (struct frame_info *frame, CORE_ADDR pc)
   /* On GNU/Linux, where this routine is used, we use an undefined
      instruction as a breakpoint.  Unlike BKPT, IT can disable execution
      of the undefined instruction.  So we might miss the breakpoint!  */
-  if ((inst1 & 0xff00) == 0xbf00 || (it & 0x0f))
+  if (((inst1 & 0xff00) == 0xbf00 && (inst1 & 0x000f) != 0) || (it & 0x0f))
     error (_("Stepping through Thumb-2 IT blocks is not yet supported"));
 
   if (it & 0x0f)