sim: iq2000: fix some missing prototypes warnings
authorMike Frysinger <vapier@gentoo.org>
Tue, 16 Nov 2021 05:44:35 +0000 (00:44 -0500)
committerMike Frysinger <vapier@gentoo.org>
Tue, 16 Nov 2021 05:49:13 +0000 (00:49 -0500)
Turns out some of these were hiding real bugs like not passing the
pc variable down.

sim/iq2000/Makefile.in
sim/iq2000/sem-switch.c
sim/iq2000/sem.c
sim/iq2000/sim-main.h

index c98fb78e7ff5287cc0afd351febab1f32fb60d76..64068acac30a32170da81c3bb230815ea0f97515 100644 (file)
@@ -38,7 +38,7 @@ ALL_CPU_CFLAGS = -DHAVE_CPU_IQ2000BF -DHAVE_CPU_IQ10BF
 SIM_EXTRA_CLEAN = iq2000-clean
 
 # Some modules don't build cleanly yet.
-cpu.o iq2000.o mloop.o sem.o: SIM_WERROR_CFLAGS =
+iq2000.o mloop.o: SIM_WERROR_CFLAGS =
 
 ## COMMON_POST_CONFIG_FRAG
 
index fb3f232c108d645dae35715c3a202d9ffd3cf8ea..4a5c8f91d004ff0dc0348774c4a2a13421762c37 100644 (file)
@@ -1809,10 +1809,10 @@ do_break (current_cpu, pc);
   ARGBUF *abuf = SEM_ARGBUF (sem_arg);
 #define FLD(f) abuf->fields.sfmt_empty.f
   int UNUSED written = 0;
-  IADDR UNUSED pc = abuf->addr;
+  IADDR pc = abuf->addr;
   vpc = SEM_NEXT_VPC (sem_arg, pc, 4);
 
-do_syscall (current_cpu);
+  do_syscall (current_cpu, pc);
 
 #undef FLD
 }
index 53b275397535a5ae363d46f3b2e8368d07b9c39c..36bab60228220cdf420f628779d08d95d5742925 100644 (file)
@@ -1747,10 +1747,10 @@ SEM_FN_NAME (iq2000bf,syscall) (SIM_CPU *current_cpu, SEM_ARG sem_arg)
 #define FLD(f) abuf->fields.sfmt_empty.f
   ARGBUF *abuf = SEM_ARGBUF (sem_arg);
   int UNUSED written = 0;
-  IADDR UNUSED pc = abuf->addr;
+  IADDR pc = abuf->addr;
   SEM_PC vpc = SEM_NEXT_VPC (sem_arg, pc, 4);
 
-do_syscall (current_cpu);
+  do_syscall (current_cpu, pc);
 
   return vpc;
 #undef FLD
index 3615a712b065c8bc954130934a29c6717f8d077f..bf060829088472979d27b4e227824433706f53ba 100644 (file)
@@ -59,4 +59,9 @@ iq2000_core_signal ((SD), (CPU), (CIA), (MAP), (NR_BYTES), (ADDR), \
 #define IQ2000_INSN_MEM_SIZE (CPU2INSN(0x800000) - CPU2INSN(0x0000))
 #define IQ2000_DATA_MEM_SIZE (CPU2DATA(0x800000) - CPU2DATA(0x0000))
 
+PCADDR get_h_pc (SIM_CPU *);
+void set_h_pc (SIM_CPU *, PCADDR);
+void do_syscall (SIM_CPU *, PCADDR);
+void do_break (SIM_CPU *, PCADDR);
+
 #endif /* SIM_MAIN_H */