Really remove tic30-aout support
[deliverable/binutils-gdb.git] / sim / common / sim-watch.c
index 17125afb9a53a0bcaa842fbee31b82335184a618..f9df155559a1022b9e53681af6461b6af576223d 100644 (file)
@@ -1,5 +1,5 @@
 /* Generic simulator watchpoint support.
 /* Generic simulator watchpoint support.
-   Copyright (C) 1997, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 1997-2020 Free Software Foundation, Inc.
    Contributed by Cygnus Support.
 
 This file is part of GDB, the GNU debugger.
    Contributed by Cygnus Support.
 
 This file is part of GDB, the GNU debugger.
@@ -17,12 +17,14 @@ GNU General Public License for more details.
 You should have received a copy of the GNU General Public License
 along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 You should have received a copy of the GNU General Public License
 along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
+#include "config.h"
 #include "sim-main.h"
 #include "sim-options.h"
 
 #include "sim-assert.h"
 
 #include <ctype.h>
 #include "sim-main.h"
 #include "sim-options.h"
 
 #include "sim-assert.h"
 
 #include <ctype.h>
+#include <stdio.h>
 
 #ifdef HAVE_STRING_H
 #include <string.h>
 
 #ifdef HAVE_STRING_H
 #include <string.h>
@@ -100,7 +102,7 @@ do_watchpoint_delete (SIM_DESC sd,
          sim_watch_point *dead = (*entry);
          (*entry) = (*entry)->next;
          sim_events_deschedule (sd, dead->event);
          sim_watch_point *dead = (*entry);
          (*entry) = (*entry)->next;
          sim_events_deschedule (sd, dead->event);
-         zfree (dead);
+         free (dead);
          status = SIM_RC_OK;
        }
       else
          status = SIM_RC_OK;
        }
       else
@@ -164,7 +166,7 @@ do_watchpoint_info (SIM_DESC sd)
       sim_io_printf (sd, "\n");
     }
 }
       sim_io_printf (sd, "\n");
     }
 }
-                   
+
 
 
 static sim_event_handler handle_watchpoint;
 
 
 static sim_event_handler handle_watchpoint;
@@ -220,7 +222,7 @@ handle_watchpoint (SIM_DESC sd, void *data)
     schedule_watchpoint (sd, point);
   else
     do_watchpoint_delete (sd, point->ident, invalid_watchpoint);
     schedule_watchpoint (sd, point);
   else
     do_watchpoint_delete (sd, point->ident, invalid_watchpoint);
-    
+
   if (point->interrupt_nr == watch->nr_interrupts)
     sim_engine_halt (sd, NULL, NULL, NULL_CIA, sim_stopped, SIM_SIGINT);
   else
   if (point->interrupt_nr == watch->nr_interrupts)
     sim_engine_halt (sd, NULL, NULL, NULL_CIA, sim_stopped, SIM_SIGINT);
   else
@@ -259,7 +261,7 @@ do_watchpoint_create (SIM_DESC sd,
        break;
       arg++;
     }
        break;
       arg++;
     }
-       
+
   (*point)->arg0 = strtoul (arg, &arg, 0);
   if (arg[0] == ',')
     (*point)->arg0 = strtoul (arg, NULL, 0);
   (*point)->arg0 = strtoul (arg, &arg, 0);
   if (arg[0] == ',')
     (*point)->arg0 = strtoul (arg, NULL, 0);
@@ -282,7 +284,7 @@ watchpoint_option_handler (SIM_DESC sd, sim_cpu *cpu, int opt,
   else
     switch (opt)
       {
   else
     switch (opt)
       {
-       
+
       case OPTION_WATCH_DELETE:
        if (isdigit ((int) arg[0]))
          {
       case OPTION_WATCH_DELETE:
        if (isdigit ((int) arg[0]))
          {
@@ -336,19 +338,19 @@ watchpoint_option_handler (SIM_DESC sd, sim_cpu *cpu, int opt,
          }
        sim_io_eprintf (sd, "Unknown watchpoint type `%s'\n", arg);
        return SIM_RC_FAIL;
          }
        sim_io_eprintf (sd, "Unknown watchpoint type `%s'\n", arg);
        return SIM_RC_FAIL;
-       
+
       case OPTION_WATCH_INFO:
        {
          do_watchpoint_info (sd);
          return SIM_RC_OK;
        }
       case OPTION_WATCH_INFO:
        {
          do_watchpoint_info (sd);
          return SIM_RC_OK;
        }
-      
+
       default:
        sim_io_eprintf (sd, "Unknown watch option %d\n", opt);
        return SIM_RC_FAIL;
       default:
        sim_io_eprintf (sd, "Unknown watch option %d\n", opt);
        return SIM_RC_FAIL;
-       
+
       }
       }
-  
+
 }
 
 
 }
 
 
@@ -372,13 +374,13 @@ static const OPTION watchpoint_options[] =
 {
   { {"watch-delete", required_argument, NULL, OPTION_WATCH_DELETE },
       '\0', "IDENT|all|pc|cycles|clock", "Delete a watchpoint",
 {
   { {"watch-delete", required_argument, NULL, OPTION_WATCH_DELETE },
       '\0', "IDENT|all|pc|cycles|clock", "Delete a watchpoint",
-      watchpoint_option_handler },
+      watchpoint_option_handler, NULL },
 
   { {"watch-info", no_argument, NULL, OPTION_WATCH_INFO },
       '\0', NULL, "List scheduled watchpoints",
 
   { {"watch-info", no_argument, NULL, OPTION_WATCH_INFO },
       '\0', NULL, "List scheduled watchpoints",
-      watchpoint_option_handler },
+      watchpoint_option_handler, NULL },
 
 
-  { {NULL, no_argument, NULL, 0}, '\0', NULL, NULL, NULL }
+  { {NULL, no_argument, NULL, 0}, '\0', NULL, NULL, NULL, NULL }
 };
 
 static const char *default_interrupt_names[] = { "int", 0, };
 };
 
 static const char *default_interrupt_names[] = { "int", 0, };
@@ -411,9 +413,10 @@ sim_watchpoint_install (SIM_DESC sd)
            char *name;
            int nr = interrupt_nr * nr_watchpoint_types + type;
            OPTION *option = &int_options[nr];
            char *name;
            int nr = interrupt_nr * nr_watchpoint_types + type;
            OPTION *option = &int_options[nr];
-           asprintf (&name, "watch-%s-%s",
-                     watchpoint_type_to_str (sd, type),
-                     interrupt_nr_to_str (sd, interrupt_nr));
+           if (asprintf (&name, "watch-%s-%s",
+                         watchpoint_type_to_str (sd, type),
+                         interrupt_nr_to_str (sd, interrupt_nr)) < 0)
+             return SIM_RC_FAIL;
            option->opt.name = name;
            option->opt.has_arg = required_argument;
            option->opt.val = type_to_option (sd, type, interrupt_nr);
            option->opt.name = name;
            option->opt.has_arg = required_argument;
            option->opt.val = type_to_option (sd, type, interrupt_nr);
This page took 0.024594 seconds and 4 git commands to generate.