ARM11: remove register "history" debug stuff
authorDavid Brownell <dbrownell@users.sourceforge.net>
Tue, 24 Nov 2009 08:14:15 +0000 (00:14 -0800)
committerDavid Brownell <dbrownell@users.sourceforge.net>
Tue, 24 Nov 2009 08:14:15 +0000 (00:14 -0800)
This was a private mechanism to snapshot registers before leaving
debug state, and then on reentry to optionally display what changed.
It was coupled to the private register cache, which won't be sticking
around in that form for much longer.  Remove (instead of teaching
it how to handle *all* the registers).

(The idea is interesting, but we ought to be able to implement
this in a generic way.  Ideally through Tcl scripts that can
automatically be invoked following debug entry...)

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
src/target/arm11.c
src/target/arm11.h

index cb1af7bf1fb42ba99de8b0369f0bff643db5d1e9..3c841bb73cb7a57db2ce8a68b9cc7890478fa28b 100644 (file)
@@ -155,9 +155,6 @@ static int arm11_build_reg_cache(struct target *target);
 static int arm11_set_reg(struct reg *reg, uint8_t *buf);
 static int arm11_get_reg(struct reg *reg);
 
-static void arm11_record_register_history(struct arm11_common * arm11);
-static void arm11_dump_reg_changes(struct arm11_common * arm11);
-
 
 /** Check and if necessary take control of the system
  *
@@ -380,41 +377,9 @@ static int arm11_on_enter_debug_state(struct arm11_common *arm11)
        if (retval != ERROR_OK)
                return retval;
 
-       arm11_dump_reg_changes(arm11);
-
        return ERROR_OK;
 }
 
-static void arm11_dump_reg_changes(struct arm11_common * arm11)
-{
-
-       if (!(debug_level >= LOG_LVL_DEBUG))
-       {
-               return;
-       }
-
-       for (size_t i = 0; i < ARM11_REGCACHE_COUNT; i++)
-       {
-               if (!arm11->reg_list[i].valid)
-               {
-                       if (arm11->reg_history[i].valid)
-                               LOG_DEBUG("%8s INVALID   (%08" PRIx32 ")", arm11_reg_defs[i].name, arm11->reg_history[i].value);
-               }
-               else
-               {
-                       if (arm11->reg_history[i].valid)
-                       {
-                               if (arm11->reg_history[i].value != arm11->reg_values[i])
-                                       LOG_DEBUG("%8s %08" PRIx32 " (%08" PRIx32 ")", arm11_reg_defs[i].name, arm11->reg_values[i], arm11->reg_history[i].value);
-                       }
-                       else
-                       {
-                               LOG_DEBUG("%8s %08" PRIx32 " (INVALID)", arm11_reg_defs[i].name, arm11->reg_values[i]);
-                       }
-               }
-       }
-}
-
 /** Restore processor state
   *
   * This is called in preparation for the RESTART function.
@@ -532,24 +497,9 @@ static int arm11_leave_debug_state(struct arm11_common *arm11)
                arm11_add_dr_scan_vc(ARRAY_SIZE(chain5_fields), chain5_fields, TAP_DRPAUSE);
        }
 
-       arm11_record_register_history(arm11);
-
        return ERROR_OK;
 }
 
-static void arm11_record_register_history(struct arm11_common *arm11)
-{
-       for (size_t i = 0; i < ARM11_REGCACHE_COUNT; i++)
-       {
-               arm11->reg_history[i].value     = arm11->reg_values[i];
-               arm11->reg_history[i].valid     = arm11->reg_list[i].valid;
-
-               arm11->reg_list[i].valid        = 0;
-               arm11->reg_list[i].dirty        = 0;
-       }
-}
-
-
 /* poll current target status */
 static int arm11_poll(struct target *target)
 {
index a67c33710b7d297853bd390f6aaf6c82f8d5aa72..033ba899cca6ae64d23f50bea3227a594a4b7699 100644 (file)
                }                               \
        } while (0)
 
-struct arm11_register_history
-{
-       uint32_t                value;
-       uint8_t         valid;
-};
-
 enum arm11_debug_version
 {
        ARM11_DEBUG_V6                  = 0x01,
@@ -84,9 +78,6 @@ struct arm11_common
 
        /*@}*/
 
-       struct arm11_register_history
-               reg_history[ARM11_REGCACHE_COUNT];      /**< register state before last resume */
-
        size_t  free_brps;                              /**< keep track of breakpoints allocated by arm11_add_breakpoint() */
        size_t  free_wrps;                              /**< keep track of breakpoints allocated by arm11_add_watchpoint() */
 

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)