]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blobdiff - sim/common/sim-hw.c
Update copyright year range in all GDB files.
[thirdparty/binutils-gdb.git] / sim / common / sim-hw.c
index 922b8ec44afc6a6f3f5fe8767a1220c82f792ba6..1a865bcd5e01669ff836c9a7f657d5018f131251 100644 (file)
@@ -1,22 +1,21 @@
 /* Simulator hardware option handling.
-   Copyright (C) 1998 Free Software Foundation, Inc.
+   Copyright (C) 1998-2019 Free Software Foundation, Inc.
    Contributed by Cygnus Support and Andrew Cagney.
 
 This file is part of GDB, the GNU debugger.
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
-any later version.
+the Free Software Foundation; either version 3 of the License, or
+(at your option) any later version.
 
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 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, write to the Free Software Foundation, Inc.,
-59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+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 "sim-main.h"
 #include "sim-assert.h"
@@ -111,31 +110,31 @@ static const OPTION hw_options[] =
 {
   { {"hw-info", no_argument, NULL, OPTION_HW_INFO },
       '\0', NULL, "List configurable hw regions",
-      hw_option_handler },
+      hw_option_handler, NULL },
   { {"info-hw", no_argument, NULL, OPTION_HW_INFO },
       '\0', NULL, NULL,
-      hw_option_handler },
+      hw_option_handler, NULL },
 
   { {"hw-trace", optional_argument, NULL, OPTION_HW_TRACE },
       '\0', "on|off", "Trace all hardware devices",
-      hw_option_handler },
+      hw_option_handler, NULL },
   { {"trace-hw", optional_argument, NULL, OPTION_HW_TRACE },
       '\0', NULL, NULL,
-      hw_option_handler },
+      hw_option_handler, NULL },
 
   { {"hw-device", required_argument, NULL, OPTION_HW_DEVICE },
       '\0', "DEVICE", "Add the specified device",
-      hw_option_handler },
+      hw_option_handler, NULL },
 
   { {"hw-list", no_argument, NULL, OPTION_HW_LIST },
       '\0', NULL, "List the device tree",
-      hw_option_handler },
+      hw_option_handler, NULL },
 
   { {"hw-file", required_argument, NULL, OPTION_HW_FILE },
       '\0', "FILE", "Add the devices listed in the file",
-      hw_option_handler },
+      hw_option_handler, NULL },
 
-  { {NULL, no_argument, NULL, 0}, '\0', NULL, NULL, NULL }
+  { {NULL, no_argument, NULL, 0}, '\0', NULL, NULL, NULL, NULL }
 };
 
 
@@ -150,7 +149,7 @@ merge_device_file (struct sim_state *sd,
   struct hw *current = STATE_HW (sd)->tree;
   int line_nr;
   char device_path[1000];
-  
+
   /* try opening the file */
   description = fopen (file_name, "r");
   if (description == NULL)
@@ -158,9 +157,9 @@ merge_device_file (struct sim_state *sd,
       perror (file_name);
       return SIM_RC_FAIL;
     }
-  
+
   line_nr = 0;
-  while (fgets (device_path, sizeof(device_path), description))
+  while (fgets (device_path, sizeof (device_path), description))
     {
       char *device;
       /* check that a complete line was read */
@@ -195,13 +194,13 @@ merge_device_file (struct sim_state *sd,
              sim_io_eprintf (sd, "%s:%d: unexpected eof", file_name, line_nr);
              return SIM_RC_FAIL;
            }
-         if (strchr(device_path, '\n') == NULL)
+         if (strchr (device_path, '\n') == NULL)
            {
-             fclose(description);
+             fclose (description);
              sim_io_eprintf (sd, "%s:%d: line to long", file_name, line_nr);
              return SIM_RC_FAIL;
            }
-         *strchr(device_path, '\n') = '\0';
+         *strchr (device_path, '\n') = '\0';
          line_nr++;
        }
       /* parse this line */
@@ -258,7 +257,7 @@ hw_option_handler (struct sim_state *sd, sim_cpu *cpu, int opt,
 
     case OPTION_HW_DEVICE:
       {
-       hw_tree_parse (STATE_HW (sd)->tree, arg);
+       hw_tree_parse (STATE_HW (sd)->tree, "%s", arg);
        return SIM_RC_OK;
       }
 
@@ -267,7 +266,7 @@ hw_option_handler (struct sim_state *sd, sim_cpu *cpu, int opt,
        sim_hw_print (sd, sim_io_vprintf);
        return SIM_RC_OK;
       }
-  
+
     case OPTION_HW_FILE:
       {
        return merge_device_file (sd, arg);
@@ -319,8 +318,8 @@ sim_hw_init (struct sim_state *sd)
 static void
 sim_hw_uninstall (struct sim_state *sd)
 {
-  /* hw_tree_delete (STATE_HW (sd)->tree); */
-  zfree (STATE_HW (sd));
+  hw_tree_delete (STATE_HW (sd)->tree);
+  free (STATE_HW (sd));
   STATE_HW (sd) = NULL;
 }
 
@@ -333,7 +332,7 @@ sim_hw_uninstall (struct sim_state *sd)
 /* CPU: The simulation is running and the current CPU/CIA
    initiates a data transfer. */
 
-void 
+void
 sim_cpu_hw_io_read_buffer (sim_cpu *cpu,
                           sim_cia cia,
                           struct hw *hw,
@@ -349,7 +348,7 @@ sim_cpu_hw_io_read_buffer (sim_cpu *cpu,
     sim_engine_abort (sd, cpu, cia, "broken CPU read");
 }
 
-void 
+void
 sim_cpu_hw_io_write_buffer (sim_cpu *cpu,
                            sim_cia cia,
                            struct hw *hw,
@@ -370,7 +369,7 @@ sim_cpu_hw_io_write_buffer (sim_cpu *cpu,
 
 /* SYSTEM: A data transfer is being initiated by the system. */
 
-unsigned 
+unsigned
 sim_hw_io_read_buffer (struct sim_state *sd,
                       struct hw *hw,
                       void *dest,